跳至主要内容

Fireworks AI

信息

我们支持所有 Fireworks AI 模型,只需在发送补全请求时将 fireworks_ai/ 设置为前缀

属性详情
描述最快、最高效的推理引擎,用于构建可用于生产环境的复合 AI 系统。
LiteLLM 上的提供商路由fireworks_ai/
提供商文档Fireworks AI ↗
支持的 OpenAI 终端节点/chat/completions, /embeddings, /completions, /audio/transcriptions

概述

本指南介绍了如何将 LiteLLM 与 Fireworks AI 集成。您可以通过三种主要方式连接到 Fireworks AI

  1. 使用 Fireworks AI 无服务器模型 – 轻松连接到 Fireworks 管理的模型。
  2. 连接到您自己的 Fireworks 账户中的模型 – 访问托管在您 Fireworks 账户中的模型。
  3. 通过直接路由部署连接 – 更灵活、可定制地连接到特定的 Fireworks 实例。

API 密钥

# env variable
os.environ['FIREWORKS_AI_API_KEY']

示例用法 - 无服务器模型

from litellm import completion
import os

os.environ['FIREWORKS_AI_API_KEY'] = ""
response = completion(
model="fireworks_ai/accounts/fireworks/models/llama-v3-70b-instruct",
messages=[
{"role": "user", "content": "hello from litellm"}
],
)
print(response)

示例用法 - 无服务器模型 - 流式传输

from litellm import completion
import os

os.environ['FIREWORKS_AI_API_KEY'] = ""
response = completion(
model="fireworks_ai/accounts/fireworks/models/llama-v3-70b-instruct",
messages=[
{"role": "user", "content": "hello from litellm"}
],
stream=True
)

for chunk in response:
print(chunk)

示例用法 - 您自己的 Fireworks 账户中的模型

from litellm import completion
import os

os.environ['FIREWORKS_AI_API_KEY'] = ""
response = completion(
model="fireworks_ai/accounts/fireworks/models/YOUR_MODEL_ID",
messages=[
{"role": "user", "content": "hello from litellm"}
],
)
print(response)

示例用法 - 直接路由部署

from litellm import completion
import os

os.environ['FIREWORKS_AI_API_KEY'] = "YOUR_DIRECT_API_KEY"
response = completion(
model="fireworks_ai/accounts/fireworks/models/qwen2p5-coder-7b#accounts/gitlab/deployments/2fb7764c",
messages=[
{"role": "user", "content": "hello from litellm"}
],
api_base="https://gitlab-2fb7764c.direct.fireworks.ai/v1"
)
print(response)

注意: 上述示例适用于聊天接口,如果您想使用文本补全接口,模型名称应为 model="text-completion-openai/accounts/fireworks/models/qwen2p5-coder-7b#accounts/gitlab/deployments/2fb7764c"

与 LiteLLM 代理一起使用

1. 在 config.yaml 中设置 Fireworks AI 模型

model_list:
- model_name: fireworks-llama-v3-70b-instruct
litellm_params:
model: fireworks_ai/accounts/fireworks/models/llama-v3-70b-instruct
api_key: "os.environ/FIREWORKS_AI_API_KEY"

2. 启动代理

litellm --config config.yaml

3. 测试

curl --location 'http://0.0.0.0:4000/chat/completions' \
--header 'Content-Type: application/json' \
--data ' {
"model": "fireworks-llama-v3-70b-instruct",
"messages": [
{
"role": "user",
"content": "what llm are you"
}
]
}
'

文档内联

LiteLLM 支持 Fireworks AI 模型的文档内联。这对于非视觉模型但仍需要解析文档/图像等的模型非常有用。

如果模型不是视觉模型,LiteLLM 会将 #transform=inline 添加到 image_url 的 url 中。查看代码

from litellm import completion
import os

os.environ["FIREWORKS_AI_API_KEY"] = "YOUR_API_KEY"
os.environ["FIREWORKS_AI_API_BASE"] = "https://audio-prod.us-virginia-1.direct.fireworks.ai/v1"

completion = litellm.completion(
model="fireworks_ai/accounts/fireworks/models/llama-v3p3-70b-instruct",
messages=[
{
"role": "user",
"content": [
{
"type": "image_url",
"image_url": {
"url": "https://storage.googleapis.com/fireworks-public/test/sample_resume.pdf"
},
},
{
"type": "text",
"text": "What are the candidate's BA and MBA GPAs?",
},
],
}
],
)
print(completion)

禁用自动添加

如果您想禁用将 #transform=inline 自动添加到 image_url 的 url 中,可以在 FireworksAIConfig 类中将 auto_add_transform_inline 设置为 False

litellm.disable_add_transform_inline_image_block = True

支持的模型 - 支持所有 Fireworks AI 模型!

信息

我们支持所有 Fireworks AI 模型,只需在发送补全请求时将 fireworks_ai/ 设置为前缀

模型名称函数调用
llama-v3p2-1b-instructcompletion(model="fireworks_ai/llama-v3p2-1b-instruct", messages)
llama-v3p2-3b-instructcompletion(model="fireworks_ai/llama-v3p2-3b-instruct", messages)
llama-v3p2-11b-vision-instructcompletion(model="fireworks_ai/llama-v3p2-11b-vision-instruct", messages)
llama-v3p2-90b-vision-instructcompletion(model="fireworks_ai/llama-v3p2-90b-vision-instruct", messages)
mixtral-8x7b-instructcompletion(model="fireworks_ai/mixtral-8x7b-instruct", messages)
firefunction-v1completion(model="fireworks_ai/firefunction-v1", messages)
llama-v2-70b-chatcompletion(model="fireworks_ai/llama-v2-70b-chat", messages)

支持的 Embedding 模型

信息

我们支持所有 Fireworks AI 模型,只需在发送 embedding 请求时将 fireworks_ai/ 设置为前缀

模型名称函数调用
fireworks_ai/nomic-ai/nomic-embed-text-v1.5response = litellm.embedding(model="fireworks_ai/nomic-ai/nomic-embed-text-v1.5", input=input_text)
fireworks_ai/nomic-ai/nomic-embed-text-v1response = litellm.embedding(model="fireworks_ai/nomic-ai/nomic-embed-text-v1", input=input_text)
fireworks_ai/WhereIsAI/UAE-Large-V1response = litellm.embedding(model="fireworks_ai/WhereIsAI/UAE-Large-V1", input=input_text)
fireworks_ai/thenlper/gte-largeresponse = litellm.embedding(model="fireworks_ai/thenlper/gte-large", input=input_text)
fireworks_ai/thenlper/gte-baseresponse = litellm.embedding(model="fireworks_ai/thenlper/gte-base", input=input_text)

音频转录

快速入门

from litellm import transcription
import os

os.environ["FIREWORKS_AI_API_KEY"] = "YOUR_API_KEY"
os.environ["FIREWORKS_AI_API_BASE"] = "https://audio-prod.us-virginia-1.direct.fireworks.ai/v1"

response = transcription(
model="fireworks_ai/whisper-v3",
audio=audio_file,
)

.transcription 中传入 API Key/API Base