MCPcopy Create free account
hub / github.com/Serial-Studio/Serial-Studio / translateTools

Method translateTools

app/src/AI/Providers/OpenAIProvider.cpp:330–346  ·  view source on GitHub ↗

* @brief Converts AI-tool definitions into the OpenAI tool-choice schema. */

Source from the content-addressed store, hash-verified

328 * @brief Converts AI-tool definitions into the OpenAI tool-choice schema.
329 */
330QJsonArray AI::OpenAIProvider::translateTools(const QJsonArray& tools)
331{
332 QJsonArray out;
333 for (const auto& v : tools) {
334 const auto t = v.toObject();
335 QJsonObject fn;
336 fn[QStringLiteral("name")] = sanitizeName(t.value(QStringLiteral("name")).toString());
337 fn[QStringLiteral("description")] = t.value(QStringLiteral("description"));
338 fn[QStringLiteral("parameters")] = t.value(QStringLiteral("input_schema"));
339
340 QJsonObject tool;
341 tool[QStringLiteral("type")] = QStringLiteral("function");
342 tool[QStringLiteral("function")] = fn;
343 out.append(tool);
344 }
345 return out;
346}
347
348//--------------------------------------------------------------------------------------------------
349// sendMessage

Callers

nothing calls this directly

Calls 3

sanitizeNameFunction · 0.85
valueMethod · 0.45
appendMethod · 0.45

Tested by

no test coverage detected