TokenLab

Framework và nền tảng

AutoGen

Sử dụng các mô hình TokenLab với Microsoft AutoGen thông qua các client tương thích với OpenAI

Tổng quan

AutoGen có thể sử dụng TokenLab thông qua OpenAIChatCompletionClient, đây là cùng một đường dẫn client tương thích với OpenAI mà nó sử dụng cho các endpoint Chat Completions tùy chỉnh khác.

Loại: Khung tác nhân (Agent Framework)

Đường dẫn chính: Chat completions tương thích với OpenAI

Độ tin cậy hỗ trợ: Hỗ trợ đường dẫn endpoint tùy chỉnh

Cài đặt

pip install -U autogen-agentchat "autogen-ext[openai]" pyyaml

Môi trường

export TOKENLAB_API_KEY="sk-your-tokenlab-key"

Cấu hình mô hình YAML

Sử dụng endpoint /v1 của TokenLab làm base_url:

Lưu cấu hình này vào 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

Tải YAML rồi đọc khóa API từ biến môi trường. YAML không tự động thay thế biến môi trường:

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)

Ứng dụng khách 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)

Gửi yêu cầu đầu tiên

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())

Lưu ý về Endpoint

Phần mở rộng OpenAI của AutoGen yêu cầu định dạng yêu cầu tương thích với OpenAI. Đối với các tính năng gốc của nhà cung cấp như Anthropic Messages hoặc generateContent của Gemini, hãy sử dụng các endpoint gốc của TokenLab từ một client hỗ trợ trực tiếp các giao thức đó.

Trên trang này