AzureAIChatCompletionsModel
這將幫助您開始使用 AzureAIChatCompletionsModel 聊天模型。如需所有 AzureAIChatCompletionsModel 功能和配置的詳細文件,請前往 API 參考文件
AzureAIChatCompletionsModel 類別使用 Azure AI Foundry SDK。AI Foundry 有多種聊天模型,包括 AzureOpenAI、Cohere、Llama、Phi-3/4 和 DeepSeek-R1 等等。您可以在 Azure 文件 中找到有關其最新模型及其成本、上下文窗口和支援的輸入類型的資訊。
概觀
整合細節
類別 | 套件 | 本地 | 可序列化 | JS 支援 | 套件下載次數 | 套件最新版 |
---|---|---|---|---|---|---|
AzureAIChatCompletionsModel | langchain-azure-ai | ❌ | ✅ | ✅ |
模型功能
工具呼叫 | 結構化輸出 | JSON 模式 | 圖片輸入 | 音訊輸入 | 影片輸入 | Token 層級串流 | 原生非同步 | Token 使用量 | Logprobs |
---|---|---|---|---|---|---|---|---|---|
✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ |
設定
若要存取 AzureAIChatCompletionsModel 模型,您需要建立一個 Azure 帳戶、取得 API 金鑰,並安裝 langchain-azure-ai
整合套件。
憑證
前往 Azure 文件 了解如何建立您的部署並產生 API 金鑰。部署模型後,請點擊 AI Foundry 中的「取得端點」按鈕。這將顯示您的端點和 API 金鑰。完成後,請設定 AZURE_INFERENCE_CREDENTIAL 和 AZURE_INFERENCE_ENDPOINT 環境變數
import getpass
import os
if not os.getenv("AZURE_INFERENCE_CREDENTIAL"):
os.environ["AZURE_INFERENCE_CREDENTIAL"] = getpass.getpass(
"Enter your AzureAIChatCompletionsModel API key: "
)
if not os.getenv("AZURE_INFERENCE_ENDPOINT"):
os.environ["AZURE_INFERENCE_ENDPOINT"] = getpass.getpass(
"Enter your model endpoint: "
)
如果您想要取得模型呼叫的自動追蹤,您也可以透過取消註解下方內容來設定您的 LangSmith API 金鑰
# os.environ["LANGSMITH_TRACING"] = "true"
# os.environ["LANGSMITH_API_KEY"] = getpass.getpass("Enter your LangSmith API key: ")
安裝
LangChain AzureAIChatCompletionsModel 整合位於 langchain-azure-ai
套件中
%pip install -qU langchain-azure-ai
實例化
現在我們可以實例化我們的模型物件並產生聊天完成
from langchain_azure_ai.chat_models import AzureAIChatCompletionsModel
llm = AzureAIChatCompletionsModel(
model_name="gpt-4",
temperature=0,
max_tokens=None,
timeout=None,
max_retries=2,
)
調用
messages = [
(
"system",
"You are a helpful assistant that translates English to French. Translate the user sentence.",
),
("human", "I love programming."),
]
ai_msg = llm.invoke(messages)
ai_msg
AIMessage(content="J'adore programmer.", additional_kwargs={}, response_metadata={'model': 'gpt-4o-2024-05-13', 'token_usage': {'input_tokens': 31, 'output_tokens': 4, 'total_tokens': 35}, 'finish_reason': 'stop'}, id='run-c082dffd-b1de-4b3f-943f-863836663ddb-0', usage_metadata={'input_tokens': 31, 'output_tokens': 4, 'total_tokens': 35})
print(ai_msg.content)
J'adore programmer.
鏈結
我們可以像這樣使用提示範本鏈結我們的模型
from langchain_core.prompts import ChatPromptTemplate
prompt = ChatPromptTemplate(
[
(
"system",
"You are a helpful assistant that translates {input_language} to {output_language}.",
),
("human", "{input}"),
]
)
chain = prompt | llm
chain.invoke(
{
"input_language": "English",
"output_language": "German",
"input": "I love programming.",
}
)
AIMessage(content='Ich liebe Programmieren.', additional_kwargs={}, response_metadata={'model': 'gpt-4o-2024-05-13', 'token_usage': {'input_tokens': 26, 'output_tokens': 5, 'total_tokens': 31}, 'finish_reason': 'stop'}, id='run-01ba6587-6ff4-4554-8039-13204a7d95db-0', usage_metadata={'input_tokens': 26, 'output_tokens': 5, 'total_tokens': 31})
API 參考文件
如需所有 AzureAIChatCompletionsModel 功能和配置的詳細文件,請前往 API 參考文件:https://langchain-python.dev.org.tw/api_reference/azure_ai/chat_models/langchain_azure_ai.chat_models.AzureAIChatCompletionsModel.html