الأطر والمنصات

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 الأصلية من عميل يدعم تلك البروتوكولات مباشرة.

في هذه الصفحة