艾塔达克官方 Python SDK,支持 Python 3.8+。
pip install atdak-sdk
from atdak import AtdakClient
# 使用 API Key 初始化
client = AtdakClient(api_key="YOUR_API_KEY")
# 或从环境变量读取(推荐)
# export ATDAK_API_KEY="YOUR_API_KEY"
client = AtdakClient()
# 基础对话
response = client.chat.completions.create(
model="atdak-gpt-4",
messages=[
{"role": "system", "content": "你是一个专业的助手"},
{"role": "user", "content": "解释什么是机器学习"}
]
)
print(response.choices[0].message.content)
# 流式输出
stream = client.chat.completions.create(
model="atdak-gpt-4",
messages=[{"role": "user", "content": "写一个故事"}],
stream=True
)
for chunk in stream:
if chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="")
response = client.chat.completions.create(
model="atdak-gpt-4-vision",
messages=[
{
"role": "user",
"content": [
{"type": "text", "text": "描述这张图片"},
{
"type": "image_url",
"image_url": {"url": "https://example.com/image.jpg"}
}
]
}
]
)
print(response.choices[0].message.content)
with open("audio.mp3", "rb") as audio_file:
transcription = client.audio.transcriptions.create(
model="atdak-whisper",
file=audio_file
)
print(transcription.text)
response = client.audio.speech.create(
model="atdak-tts",
voice="alloy",
input="你好,欢迎使用艾塔达克"
)
response.stream_to_file("output.mp3")
response = client.embeddings.create(
model="atdak-embedding",
input=["你好世界", "机器学习入门"]
)
for embedding in response.data:
print(embedding.embedding[:5]) # 打印前5维
from atdak import AtdakError, RateLimitError, AuthenticationError
try:
response = client.chat.completions.create(...)
except AuthenticationError:
print("API Key 无效")
except RateLimitError:
print("超出速率限制,请稍后重试")
except AtdakError as e:
print(f"API 错误: {e}")
import asyncio
from atdak import AsyncAtdakClient
async def main():
client = AsyncAtdakClient()
response = await client.chat.completions.create(
model="atdak-gpt-4",
messages=[{"role": "user", "content": "你好"}]
)
print(response.choices[0].message.content)
asyncio.run(main())