AzureOpenAILLM¶
运行异步 API 客户端的 Azure OpenAI LLM 实现。
属性¶
-
model: 用于 LLM 的模型名称,即 Azure 部署的名称。
-
base_url: 用于 Azure OpenAI API 的基本 URL 可以使用
AZURE_OPENAI_ENDPOINT
设置。默认为None
,这意味着将使用为环境变量AZURE_OPENAI_ENDPOINT
设置的值,如果未设置则为None
。 -
api_key: 用于验证对 Azure OpenAI API 请求的 API 密钥。默认为
None
,这意味着将使用为环境变量AZURE_OPENAI_API_KEY
设置的值,如果未设置则为None
。 -
api_version: 用于 Azure OpenAI API 的 API 版本。默认为
None
,这意味着将使用为环境变量OPENAI_API_VERSION
设置的值,如果未设置则为None
。
示例¶
生成文本¶
from distilabel.models.llms import AzureOpenAILLM
llm = AzureOpenAILLM(model="gpt-4-turbo", api_key="api.key")
llm.load()
output = llm.generate_outputs(inputs=[[{"role": "user", "content": "Hello world!"}]])
从遵循 OpenAI API 的自定义端点生成文本¶
from distilabel.models.llms import AzureOpenAILLM
llm = AzureOpenAILLM(
model="prometheus-eval/prometheus-7b-v2.0",
base_url=r"http://localhost:8080/v1"
)
llm.load()
output = llm.generate_outputs(inputs=[[{"role": "user", "content": "Hello world!"}]])
生成结构化数据¶
from pydantic import BaseModel
from distilabel.models.llms import AzureOpenAILLM
class User(BaseModel):
name: str
last_name: str
id: int
llm = AzureOpenAILLM(
model="gpt-4-turbo",
api_key="api.key",
structured_output={"schema": User}
)
llm.load()
output = llm.generate_outputs(inputs=[[{"role": "user", "content": "Create a user profile for the following marathon"}]])