ChatYI
這將幫助您開始使用 Yi 聊天模型。如需所有 ChatYi 功能和配置的詳細文檔,請前往 API 參考文檔。
01.AI 由李開復博士創立,是一家處於 AI 2.0 前沿的全球公司。他們提供尖端的大型語言模型,包括 Yi 系列,其參數範圍從 6B 到數千億。01.AI 還提供多模態模型、開放 API 平台以及 Yi-34B/9B/6B 和 Yi-VL 等開源選項。
概觀
整合詳細資訊
類別 | 套件 | 本地 | 可序列化 | JS 支援 | 套件下載 | 套件最新版 |
---|---|---|---|---|---|---|
ChatYi | langchain_community | ✅ | ❌ | ❌ |
模型功能
工具呼叫 | 結構化輸出 | JSON 模式 | 圖像輸入 | 音訊輸入 | 視訊輸入 | Token 級別串流 | 原生非同步 | Token 使用量 | Logprobs |
---|---|---|---|---|---|---|---|---|---|
❌ | ❌ | ❌ | ✅ | ❌ | ❌ | ✅ | ❌ | ✅ | ❌ |
設定
要存取 ChatYi 模型,您需要建立 01.AI 帳戶、取得 API 金鑰,並安裝 langchain_community
整合套件。
憑證
前往 01.AI 註冊 01.AI 並產生 API 金鑰。完成後,設定 YI_API_KEY
環境變數
import getpass
import os
if "YI_API_KEY" not in os.environ:
os.environ["YI_API_KEY"] = getpass.getpass("Enter your Yi API key: ")
如果您想取得模型呼叫的自動追蹤,您也可以設定您的 LangSmith API 金鑰,取消註解下方即可
# os.environ["LANGSMITH_API_KEY"] = getpass.getpass("Enter your LangSmith API key: ")
# os.environ["LANGSMITH_TRACING"] = "true"
安裝
LangChain ModuleName 整合位於 langchain_community
套件中
%pip install -qU langchain_community
實例化
現在我們可以實例化我們的模型物件並產生聊天完成
- 待辦事項:使用相關參數更新模型實例化。
from langchain_community.chat_models.yi import ChatYi
llm = ChatYi(
model="yi-large",
temperature=0,
timeout=60,
yi_api_base="https://api.01.ai/v1/chat/completions",
# other params...
)
API 參考文檔:ChatYi
調用
from langchain_core.messages import HumanMessage, SystemMessage
messages = [
SystemMessage(content="You are an AI assistant specializing in technology trends."),
HumanMessage(
content="What are the potential applications of large language models in healthcare?"
),
]
ai_msg = llm.invoke(messages)
ai_msg
API 參考文檔:HumanMessage | SystemMessage
AIMessage(content="Large Language Models (LLMs) have the potential to significantly impact healthcare by enhancing various aspects of patient care, research, and administrative processes. Here are some potential applications:\n\n1. **Clinical Documentation and Reporting**: LLMs can assist in generating patient reports and documentation by understanding and summarizing clinical notes, making the process more efficient and reducing the administrative burden on healthcare professionals.\n\n2. **Medical Coding and Billing**: These models can help in automating the coding process for medical billing by accurately translating clinical notes into standardized codes, reducing errors and improving billing efficiency.\n\n3. **Clinical Decision Support**: LLMs can analyze patient data and medical literature to provide evidence-based recommendations to healthcare providers, aiding in diagnosis and treatment planning.\n\n4. **Patient Education and Communication**: By simplifying medical jargon, LLMs can help in educating patients about their conditions, treatment options, and preventive care, improving patient engagement and health literacy.\n\n5. **Natural Language Processing (NLP) for EHRs**: LLMs can enhance NLP capabilities in Electronic Health Records (EHRs) systems, enabling better extraction of information from unstructured data, such as clinical notes, to support data-driven decision-making.\n\n6. **Drug Discovery and Development**: LLMs can analyze biomedical literature and clinical trial data to identify new drug candidates, predict drug interactions, and support the development of personalized medicine.\n\n7. **Telemedicine and Virtual Health Assistants**: Integrated into telemedicine platforms, LLMs can provide preliminary assessments and triage, offering patients basic health advice and determining the urgency of their needs, thus optimizing the utilization of healthcare resources.\n\n8. **Research and Literature Review**: LLMs can expedite the process of reviewing medical literature by quickly identifying relevant studies and summarizing findings, accelerating research and evidence-based practice.\n\n9. **Personalized Medicine**: By analyzing a patient's genetic information and medical history, LLMs can help in tailoring treatment plans and medication dosages, contributing to the advancement of personalized medicine.\n\n10. **Quality Improvement and Risk Assessment**: LLMs can analyze healthcare data to identify patterns that may indicate areas for quality improvement or potential risks, such as hospital-acquired infections or adverse drug events.\n\n11. **Mental Health Support**: LLMs can provide mental health support by offering coping strategies, mindfulness exercises, and preliminary assessments, serving as a complement to professional mental health services.\n\n12. **Continuing Medical Education (CME)**: LLMs can personalize CME by recommending educational content based on a healthcare provider's practice area, patient demographics, and emerging medical literature, ensuring that professionals stay updated with the latest advancements.\n\nWhile the applications of LLMs in healthcare are promising, it's crucial to address challenges such as data privacy, model bias, and the need for regulatory approval to ensure that these technologies are implemented safely and ethically.", response_metadata={'token_usage': {'completion_tokens': 656, 'prompt_tokens': 40, 'total_tokens': 696}, 'model': 'yi-large'}, id='run-870850bd-e4bf-4265-8730-1736409c0acf-0')
串聯
我們可以像這樣使用提示範本串聯我們的模型
from langchain_core.prompts import ChatPromptTemplate
prompt = ChatPromptTemplate.from_messages(
[
(
"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.",
}
)
API 參考文檔:ChatPromptTemplate
AIMessage(content='Ich liebe das Programmieren.', response_metadata={'token_usage': {'completion_tokens': 8, 'prompt_tokens': 33, 'total_tokens': 41}, 'model': 'yi-large'}, id='run-daa3bc58-8289-4d72-a24e-80622fa90d6d-0')
API 參考文檔
如需所有 ChatYi 功能和配置的詳細文檔,請前往 API 參考文檔:https://langchain-python.dev.org.tw/api_reference/community/chat_models/langchain_community.chat_models.yi.ChatYi.html