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}}
 
相关推荐
骑士雄师41 分钟前
langchain:推荐切片策略
服务器·前端·langchain
倾颜3 小时前
给受控 Agent 接入 LangSmith:如何观测 HITL / Resume 生命周期
langchain·next.js
大流星3 小时前
LangChainJs之Prompt提示词(二)
javascript·langchain
满怀冰雪4 小时前
24_中间件系统源码分析_Middleware链的洋葱模型与异常处理
人工智能·python·中间件·langchain
如何原谅奋力过但无声5 小时前
LangGraph 中如何实现状态注入:InjectedState
langchain
行者-全栈开发5 小时前
【Spring AI 】AI Agent 架构设计:感知、规划、行动、记忆四层模型深度解析(2026最新)
langchain·autogen·spring ai·企业级应用·智能体设计·agent架构·四层模型深度解析
齐 飞21 小时前
LangChain快速入门-03Retrieval(上)
langchain
怕浪猫1 天前
第9章 实战项目一:智能数据分析Agent
langchain·aigc·ai编程
invicinble1 天前
总结一下LangChain+LangGraph这套体系
langchain