嘿,老铁们,今天我们来聊聊如何在LangChain中使用01.AI的Yi大型语言模型。相信很多小伙伴都知道,01.AI是由李开复博士创办的全球领先AI公司,他们推出的Yi系列语言模型从6B到上百亿参数都有,可以说是相当强大。接下来,我会带大家一步步实战操作,来看看怎么搞定这个技术点。
技术背景介绍
首先,咱们先来聊聊01.AI做的这些事儿。他们主打的Yi系列不仅参数量大,还有多模态模型支持,你可以想象这是多么丝滑的操作。同时呢,01.AI提供开放API平台和一些开源版本,比如Yi-34B/9B/6B和Yi-VL,这样的开放策略显然降低了使用门槛。
原理深度解析
集成这样的语言模型,一般你需要做的就是和API打交道。基本的原理就是通过API来发送请求,获得模型的输出,这样你就可以在应用中发挥模型的强大能力。为了使用这些模型,首先你要搞定一个API Key。访问灵医玩物来获取这个Key,申请时需要说明是国内还是国际使用哦。
实战代码演示
说白了,就是这么个原理。下面我们就来看看如何在代码中使用这些功能。
# 首先安装必要的包
%pip install -qU langchain-community
import os
from langchain_community.llms import YiLLM
# 设置API Key
os.environ["YI_API_KEY"] = "YOUR_API_KEY"
# 加载模型
llm = YiLLM(model="yi-large")
# 如果需要,你还可以指定区域
# llm = YiLLM(model="yi-large", region="domestic") # "domestic"或"international"
# 基本使用示例
res = llm.invoke("What's your name?")
print(res)
# 生成内容
res = llm.generate(
prompts=[
"Explain the concept of large language models.",
"What are the potential applications of AI in healthcare?",
]
)
print(res)
# 流式输出
for chunk in llm.stream("Describe the key features of the Yi language model series."):
print(chunk, end="", flush=True)
# 异步流式输出
import asyncio
async def run_aio_stream():
async for chunk in llm.astream(
"Write a brief on the future of AI according to Dr. Kai-Fu Lee's vision."
):
print(chunk, end="", flush=True)
asyncio.run(run_aio_stream())
# 调整参数使用
llm_with_params = YiLLM(
model="yi-large",
temperature=0.7,
top_p=0.9,
)
res = llm_with_params(
"Propose an innovative AI application that could benefit society."
)
print(res)
这波操作可以说是相当丝滑,基本上也没啥难度。如果你是第一次接触这样的API,不妨多试试这些代码段。
优化建议分享
在使用API时有几个小建议分享给老铁们:首先,合理地调整模型的参数,比如temperature和top_p,这样能更好地控制模型输出的随机性和多样性。其次,使用代理服务可以提高接口调用的稳定性哦。
补充说明和总结
最后补充一点,我个人一直在用 https://yunwu.ai 提供的这些大模型解决方案,体验不错,推荐大家有兴趣也可以试试。
今天的技术分享就到这里,希望对大家有帮助。开发过程中遇到问题也可以在评论区交流~