Skip to main content

OpenAI SDK 兼容接入(推荐)

火山方舟 API 与 OpenAI API 协议完全兼容,你可以直接使用 OpenAI SDK。

Python

from openai import OpenAI

client = OpenAI(
    api_key="your-ark-api-key",  # 或设置环境变量 ARK_API_KEY
    base_url="https://ark.cn-beijing.volces.com/api/v3"
)

# 基础对话
response = client.chat.completions.create(
    model="your-endpoint-id",
    messages=[
        {"role": "system", "content": "你是一位有帮助的 AI 助手。"},
        {"role": "user", "content": "请用简洁的语言解释什么是机器学习"}
    ],
    temperature=0.7,
    max_tokens=1024
)

print(response.choices[0].message.content)

流式输出

stream = client.chat.completions.create(
    model="your-endpoint-id",
    messages=[{"role": "user", "content": "讲一个关于程序员的笑话"}],
    stream=True
)

for chunk in stream:
    if chunk.choices[0].delta.content:
        print(chunk.choices[0].delta.content, end="", flush=True)

Function Calling

import json

tools = [
    {
        "type": "function",
        "function": {
            "name": "get_weather",
            "description": "获取指定城市的天气信息",
            "parameters": {
                "type": "object",
                "properties": {
                    "city": {"type": "string", "description": "城市名称"},
                    "unit": {"type": "string", "enum": ["celsius", "fahrenheit"]}
                },
                "required": ["city"]
            }
        }
    }
]

response = client.chat.completions.create(
    model="your-endpoint-id",
    messages=[{"role": "user", "content": "北京今天天气怎么样?"}],
    tools=tools,
    tool_choice="auto"
)

# 处理工具调用
if response.choices[0].message.tool_calls:
    tool_call = response.choices[0].message.tool_calls[0]
    args = json.loads(tool_call.function.arguments)
    print(f"调用函数: {tool_call.function.name}, 参数: {args}")

图片理解(Vision)

response = client.chat.completions.create(
    model="your-vision-endpoint-id",
    messages=[
        {
            "role": "user",
            "content": [
                {"type": "text", "text": "描述这张图片的内容"},
                {
                    "type": "image_url",
                    "image_url": {"url": "https://example.com/image.jpg"}
                }
            ]
        }
    ]
)

print(response.choices[0].message.content)

官方 SDK

Python SDK

pip install 'volcengine-python-sdk[ark]'

Go SDK

go get github.com/volcengine/volcengine-go-sdk

Java SDK

// Gradle
implementation 'com.volcengine:volcengine-java-sdk-ark-runtime:LATEST'
Maven 用户请添加以下依赖到 pom.xml
字段
groupIdcom.volcengine
artifactIdvolcengine-java-sdk-ark-runtime
versionLATEST

官方文档