Langchain提示词模版

lua 复制代码
########################
# 提示词模版
########################
# 导入操作系统相关功能,用于环境变量操作
import os
 
# 从自定义模块导入密钥加载函数,用于安全地加载API密钥
from config.load_key import load_key
 
# 设置 LangSmith 追踪功能开启,启用LangChain的监控和追踪功能
os.environ["LANGSMITH_TRACING"] = "true"
 
# 设置 LangSmith 项目名称,用于在LangSmith平台上区分不同项目
os.environ["LANGSMITH_PROJECT"] = "firstLangChainDemo"
 
# 从配置文件加载 LangSmith API 密钥并设置环境变量
os.environ["LANGSMITH_API_KEY"] = load_key("LANGSMITH_API_KEY")
 
# 检查是否已设置 OpenAI API 密钥,如果没有则从配置文件加载
if not os.environ.get("OPENAI_API_KEY"):
    os.environ["OPENAI_API_KEY"] = load_key("OPENAI_API_KEY")
 
# 从 langchain_core.prompts 模块导入 ChatPromptTemplate 类,用于创建聊天提示模板
from langchain_core.prompts import ChatPromptTemplate
 
# 创建聊天提示模板,包含系统消息和用户消息两部分
# 系统消息指示模型将英文翻译成指定语言,用户消息包含待翻译的文本
prompt_template = ChatPromptTemplate.from_messages([
    # 系统消息模板,使用 {language} 和 {text} 作为占位符
    ("system","Translat the following from English into {language}"),
    # 用户消息模板,包含待翻译的文本占位符
    ("user","{text}")
])
 
# 使用指定参数实例化提示模板,将 {language} 替换为 "Chinese",{text} 替换为 "I love programming."
prompt = prompt_template.invoke({"language":"Chinese","text":"I love programming."})
 
# 从 langchain_openai 模块导入 ChatOpenAI 类,用于与OpenAI模型交互
from langchain_openai import ChatOpenAI
 
# 初始化 ChatOpenAI 模型实例,指定模型名称、API基础URL和API密钥
llm = ChatOpenAI(model="gpt-4o-mini", base_url="https://api.gptsapi.net/v1", api_key=os.environ["OPENAI_API_KEY"])
 
# 调用模型处理构建好的提示,获取翻译结果
result = llm.invoke(prompt)
 
# 打印翻译结果的内容部分
print("结果:", result.content)
 
# 打印完整的返回对象,包含更多元数据信息
print("完整返回对象:", result)
 
# 结果: 我爱编程。
# 完整返回对象: content='我爱编程。' additional_kwargs={'refusal': None} response_metadata={'token_usage': {'completion_tokens': 6, 'prompt_tokens': 23, 'total_tokens': 29, 'completion_tokens_details': {'accepted_prediction_tokens': 0, 'audio_tokens': 0, 'reasoning_tokens': 0, 'rejected_prediction_tokens': 0}, 'prompt_tokens_details': {'audio_tokens': 0, 'cached_tokens': 0}}, 'model_provider': 'openai', 'model_name': 'gpt-4o-mini', 'system_fingerprint': 'fp_efad92c60b', 'id': 'chatcmpl-CfoAf0Kq0Pyywkff8s5cCwvKOmtVx', 'finish_reason': 'stop', 'logprobs': None} id='lc_run--3d21e66b-571b-4d23-af2e-6eee27d07461-0' usage_metadata={'input_tokens': 23, 'output_tokens': 6, 'total_tokens': 29, 'input_token_details': {'audio': 0, 'cache_read': 0}, 'output_token_details': {'audio': 0, 'reasoning': 0}}
 
相关推荐
尽兴-2 小时前
5.1 主流框架:LangChain、LlamaIndex、Semantic Kernel
microsoft·langchain·semantic·liamaindex
wuhen_n2 小时前
RAG 优化实战:检索精准度提升全方案
前端·langchain·ai编程
沪漂阿龙3 小时前
LangChain 系列之Agent:从固定流程到模型自主决策
服务器·数据库·langchain
老陈聊架构4 小时前
『AI大模型』OpenDataLoader PDF 实战:RAG 知识库 PDF 解析与LangChain 接入
ai·langchain·pdf·rag·opendataloader
喵叔哟4 小时前
Week 3 --Day 4:生产级部署
python·langchain
GISer_Jing5 小时前
LangChain 核心架构深度解析:从设计哲学到工程实践
架构·langchain
满怀冰雪5 小时前
01_LangChain是什么_带你理解LLM应用框架
python·langchain
沪漂阿龙5 小时前
RAG 是什么?为什么大模型需要外挂知识库?
人工智能·架构·langchain
Tina学编程5 小时前
LangChain P2 | 给LangChain装上手脚[MacOS]
langchain
沪漂阿龙7 小时前
LangChain 系列之Tools:让大模型真正连接业务系统
人工智能·python·langchain