MCPcopy Create free account
hub / github.com/ClickHouse/ai-sdk-cpp / test_openai_tools

Function test_openai_tools

examples/test_tool_integration.cpp:33–75  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

31}
32
33void test_openai_tools() {
34 std::cout << "\n=== Testing OpenAI Tool Integration ===\n";
35
36 auto client = ai::openai::create_client();
37
38 // Create a simple tool
39 ai::ToolSet tools = {
40 {"test_tool", ai::create_simple_tool(
41 "test_tool", "A simple test tool that echoes input",
42 {{"input", "string"}}, simple_test_tool)}};
43
44 ai::GenerateOptions options;
45 options.model = ai::openai::models::kGpt54;
46 options.prompt = "Please use the test_tool with input 'hello world'";
47 options.tools = tools;
48 options.tool_choice =
49 ai::ToolChoice::specific("test_tool"); // Force tool usage
50 options.max_tokens = 100;
51
52 std::cout << "Making request to OpenAI with forced tool usage...\n";
53
54 auto result = client.generate_text(options);
55
56 if (result) {
57 std::cout << "✅ Request successful!\n";
58 std::cout << "Response: " << result.text << "\n";
59 std::cout << "Tool calls: " << result.tool_calls.size() << "\n";
60 std::cout << "Tool results: " << result.tool_results.size() << "\n";
61
62 if (!result.tool_calls.empty()) {
63 const auto& call = result.tool_calls[0];
64 std::cout << "First tool call: " << call.tool_name << "\n";
65 std::cout << "Arguments: " << call.arguments.dump() << "\n";
66 }
67
68 if (!result.tool_results.empty()) {
69 const auto& tool_result = result.tool_results[0];
70 std::cout << "First tool result: " << tool_result.result.dump() << "\n";
71 }
72 } else {
73 std::cout << "❌ Request failed: " << result.error_message() << "\n";
74 }
75}
76
77void test_anthropic_tools() {
78 std::cout << "\n=== Testing Anthropic Tool Integration ===\n";

Callers 1

mainFunction · 0.85

Calls 4

create_simple_toolFunction · 0.85
create_clientFunction · 0.50
generate_textMethod · 0.45
error_messageMethod · 0.45

Tested by

no test coverage detected