之前使用langserve可以特别轻松的封装langchain服务为API,这些API开放了链的各种能力。
有时候我们实际上只是需要更加简单的接口,并且希望能够更加灵活的对接口进行控制。此时直接使用flask及相关框架可能是更好的解决方案。
概述
本文讲述了如何使用一个利用本地大模型llama3.1
实现语言翻译功能的API。
它用flask
很轻松的将langchian服务开放为API,结合flasgger
给文档添加注释并生成playground,并且使用jsonschema
做json数据校验,轻松验证接口参数。
麻雀虽小,但五脏俱全,应该对langchain入门者有较大帮助。
安装依赖
pip install flask flask-restful
pip install flasgger
pip install jsonschema
定义翻译方法
下面的方法需要两个参数,其中:language是翻译目标语言,text是需要翻译的文本。
# 翻译方法
def translate(language,text):
# 1. 创建提示词模板
system_template = "Translate the following into {language}:"
prompt_template = ChatPromptTemplate.from_messages([
('system', system_template),
('user', '{text}')
])
# 2. 创建本地大模型
model = OllamaLLM(model="llama3.1")
# 3. 创建解析器
parser = StrOutputParser