انتقل إلى المحتوى
كل التوثيق

أدلة

استدعاءات الأدوات

يستدعي النموذجان الأدوات بصيغة OpenAI: تصف الدوال، ويطلب النموذج واحدة، فتشغّلها وترسل النتيجة إليه.

تم التحقق في 26 أكتوبر 2026

الحلقة

  1. أرسل tools: كل أداة دالة لها اسم ووصف ومعاملات بمخطط JSON Schema.
  2. حين يريد النموذج أداة، يكون finish_reason في الرد هو tool_calls، وتسرد message.tool_calls الأدوات، مع وسائطها كنص JSON.
  3. شغّل كل واحدة، وأضف رسالة tool بـ tool_call_id الخاص بها والنتيجة.
  4. أرسل المحادثة من جديد. كرّر حتى يصبح finish_reason هو stop.
Python
import json
import os
from openai import OpenAI

client = OpenAI(
    base_url="https://nokeep.ai/v1",
    api_key=os.environ["NOKEEP_API_KEY"],
)

tools = [{
    "type": "function",
    "function": {
        "name": "get_weather",
        "description": "Today's weather in a city",
        "parameters": {
            "type": "object",
            "properties": {"city": {"type": "string"}},
            "required": ["city"],
        },
    },
}]

def get_weather(city):
    return {"city": city, "high_c": 21, "sky": "clear"}

messages = [{"role": "user", "content": "Should I bring a jacket in Lisbon today?"}]
while True:
    reply = client.chat.completions.create(model="deepseek-v4.1-flash-uncensored", messages=messages, tools=tools)
    message = reply.choices[0].message
    messages.append(message)
    if not message.tool_calls:
        print(message.content)
        break
    for call in message.tool_calls:
        result = get_weather(**json.loads(call.function.arguments))
        messages.append({"role": "tool", "tool_call_id": call.id, "content": json.dumps(result)})

tool_choice

النموذجيقبل
deepseek-v4.1-flash-uncensoredauto، وnone، وrequired، أو اسم دالة محدد. وكذلك parallel_tool_calls.
glm-5.3-flash-uncensoredauto أو none. يختار أدواته بنفسه؛ وأي قيمة أخرى تعني 400 unsupported_tool_choice.

مفيد أن تعرفه

  • كل رسالة tool تحتاج tool_call_id الذي تجيب عنه، وإلا رُفض الاستدعاء بـ 400 invalid_messages.
  • تُرسل مخططات الأدوات مع كل طلب، وتُحتسب كرموز إدخال.
  • لا تشغّل النماذج شيئًا بنفسها. كودك هو الذي يشغّل الأدوات، فهو يقرر ما الذي يمكنها الوصول إليه.