الأطر والمنصات
AutoGen
استخدم نماذج TokenLab مع Microsoft AutoGen من خلال العملاء المتوافقين مع OpenAI
نظرة عامة
يمكن لـ AutoGen استخدام TokenLab من خلال OpenAIChatCompletionClient، وهو نفس مسار العميل المتوافق مع OpenAI الذي يستخدمه لنقاط نهاية Chat Completions المخصصة الأخرى.
النوع: إطار عمل الوكلاء (Agent Framework)
المسار الأساسي: إكمال المحادثات المتوافق مع OpenAI
مستوى الدعم: مسار نقطة نهاية مخصصة مدعوم
التثبيت
pip install -U autogen-agentchat "autogen-ext[openai]" pyyamlالبيئة
export TOKENLAB_API_KEY="sk-your-tokenlab-key"إعداد النموذج بصيغة YAML
استخدم نقطة نهاية /v1 الخاصة بـ TokenLab كـ base_url:
احفظ هذه الإعدادات في ملف tokenlab-model.yaml:
provider: autogen_ext.models.openai.OpenAIChatCompletionClient
config:
model: claude-sonnet-5
base_url: https://api.tokenlab.sh/v1
model_info:
function_calling: true
json_output: true
structured_output: false
vision: false
family: claudeحمّل ملف YAML واقرأ مفتاح API من متغير البيئة. لا يستبدل YAML متغيرات البيئة تلقائيًا:
import os
import yaml
from autogen_agentchat.agents import AssistantAgent
from autogen_core.models import ChatCompletionClient
with open("tokenlab-model.yaml", encoding="utf-8") as config_file:
config = yaml.safe_load(config_file)
config["config"]["api_key"] = os.environ["TOKENLAB_API_KEY"]
model_client = ChatCompletionClient.load_component(config)
agent = AssistantAgent("assistant", model_client=model_client)عميل Python
import os
from autogen_agentchat.agents import AssistantAgent
from autogen_ext.models.openai import OpenAIChatCompletionClient
model_client = OpenAIChatCompletionClient(
model="claude-sonnet-5",
base_url="https://api.tokenlab.sh/v1",
api_key=os.environ["TOKENLAB_API_KEY"],
model_info={
"function_calling": True,
"json_output": True,
"structured_output": False,
"vision": False,
"family": "claude",
},
)
agent = AssistantAgent("assistant", model_client=model_client)إرسال أول طلب
import asyncio
async def main():
try:
result = await agent.run(task="Reply with: Connected to TokenLab.")
print(result.messages[-1].content)
finally:
await model_client.close()
asyncio.run(main())ملاحظات حول نقطة النهاية
تتوقع إضافة OpenAI في AutoGen شكل الطلب المتوافق مع OpenAI. بالنسبة للميزات الأصلية للمزود مثل Anthropic Messages أو Gemini generateContent، استخدم نقاط نهاية TokenLab الأصلية من عميل يدعم تلك البروتوكولات مباشرة.