如何快速入门OCI Generative AI聊天模型:使用LangChain构建智能对话

49 阅读2分钟

引言

Oracle Cloud Infrastructure (OCI) Generative AI是一个完全托管的服务,提供了一组尖端且可定制的大型语言模型(LLMs)。这些模型涵盖了广泛的使用场景,并通过单一API提供访问权限。本篇文章旨在指导您如何快速集成并使用OCI Generative AI聊天模型,帮助您利用这些强大的工具来增强您的应用程序。

主要内容

集成细节

OCI Generative AI模型通过langchain-community包进行集成,您还需要安装oci包。这两个库共同为您提供了访问并使用这些强大语言模型的能力。

安装

通过以下命令来安装必要的Python包:

%pip install -qU langchain-community oci

实例化

要进行模型的实例化,您需要提供model_idservice_endpoint以及其它参数。以下是一个基本的代码示例:

from langchain_community.chat_models.oci_generative_ai import ChatOCIGenAI
from langchain_core.messages import AIMessage, HumanMessage, SystemMessage

chat = ChatOCIGenAI(
    model_id="cohere.command-r-16k",
    service_endpoint="https://inference.generativeai.us-chicago-1.oci.oraclecloud.com", # 使用API代理服务提高访问稳定性
    compartment_id="MY_OCID",
    model_kwargs={"temperature": 0.7, "max_tokens": 500},
)

调用

您可以通过以下代码与聊天模型进行交互:

messages = [
    SystemMessage(content="You are an AI assistant."),
    AIMessage(content="Hi there, human!"),
    HumanMessage(content="Tell me a joke."),
]
response = chat.invoke(messages)

print(response.content)

链接与提示模板

可以使用提示模板来增强模型的交互性:

from langchain_core.prompts import ChatPromptTemplate

prompt = ChatPromptTemplate.from_template("Tell me a joke about {topic}")
chain = prompt | chat

response = chain.invoke({"topic": "dogs"})
print(response.content)

常见问题和解决方案

  1. 网络限制问题:由于某些地区可能存在对API访问的限制,建议使用API代理服务来提高访问的稳定性。
  2. 认证问题:确保您使用正确的认证方法,例如API Key或session token,如在OCI SDK文档中所述。

总结和进一步学习资源

通过OCI Generative AI服务,您可以轻松地集成和使用各种大语言模型来增强您的应用程序功能。本篇文章提供了一个快速入门的指南,帮助您理解和使用这些工具。对于更多详细信息,可以参考以下资源。

参考资料

如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!

---END---