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}}
 
相关推荐
郝学胜-神的一滴6 小时前
LangChain Skill 实现(渐进披露 On-Demand Skill,LangChain 官方 Deep Agent Skill 模式)
开发语言·python·langchain·numpy
Flynn Liang1 天前
Rerank 与上下文工程:重排、压缩与引用溯源的收益边界
langchain·rag·langchain4j·rerank·上下文工程·引用溯源
Flynn Liang1 天前
RAG 评估体系:黄金集、检索指标与 LLM-as-Judge 落地
java·langchain·rag·评估·langchain4j·检索指标
啊吧怪不啊吧2 天前
LangChain之绑定工具
langchain
努力的小郑3 天前
数据查到了,回答去哪儿了?一次百炼 + LangChain 排查实录
后端·langchain·agent
承渊政道4 天前
LangChainAI应用开发框架【LangChain与LangGraph介绍】
langchain·大模型·langgraph·ai应用开发
Flynn Liang4 天前
AiServices 源码级拆解:一个接口如何变成 RAG Agent
java·langchain·源码分析·rag·langchain4j·aiservices
Flynn Liang4 天前
LangChain4j 1.23 架构全景:Java 大模型应用的 6 层抽象
java·langchain·大模型·rag·ai agent·langchain4j
GISer_Jing4 天前
Agent相关岗位时收集的各类技术面试题
后端·ai·langchain
Flynn Liang4 天前
LangChain4j 生产级工程骨架:12 个模块 + Docker 一键启动
java·spring boot·langchain·rag·langchain4j