老铁们,今天咱们来聊聊一个有趣的东西——如何通过自然语言和SQL数据库打交道。这个操作可以说是相当丝滑,使用的是Zephyr-7b via Ollama在Mac笔记本上本地推理。这一波操作真的是非常适合那些想要简化数据库查询流程的朋友们。
环境设置
说白了,首先你得确保你的环境正常运转。我们需要安装Ollama以及相关的SQL数据库。具体的安装步骤你可以在这里找到。
下载你的LLM
这个包默认使用zephyr
。你可以通过以下命令下载:
ollama pull zephyr
当然,你也可以从这里选择其他你感兴趣的LLM。
数据库示例
这个包中自带一个2023年NBA球员名单的示例数据库。构建这个数据库的步骤可以查看这里。
使用方法
开始之前,请确保你的系统中已经安装了LangChain CLI:
pip install -U langchain-cli
创建新项目
想要创建一个新项目并安装这个包,可以这样做:
langchain app new my-app --package sql-ollama
添加到现有项目
如果你已经有一个项目,直接运行:
langchain app add sql-ollama
然后,在你的server.py
文件中添加以下代码:
from sql_ollama import chain as sql_ollama_chain
add_routes(app, sql_ollama_chain, path="/sql-ollama")
配置LangSmith(可选)
LangSmith能够帮助我们追踪、监控和调试LangChain应用。注册LangSmith可以在这里。如果暂时不需要,可以跳过这步。
export LANGCHAIN_TRACING_V2=true
export LANGCHAIN_API_KEY=<your-api-key>
export LANGCHAIN_PROJECT=<your-project> # 默认情况下会使用"default"
启动LangServe实例
如果你已经在这个目录下,可以直接启动LangServe实例:
langchain serve
你的FastAPI应用将会在本地运行,地址是:http://localhost:8000
我们可以在http://127.0.0.1:8000/docs查看所有模板,并在http://127.0.0.1:8000/sql-ollama/playground访问游乐场。
通过代码访问模板
from langserve.client import RemoteRunnable
runnable = RemoteRunnable("http://localhost:8000/sql-ollama")
今天的技术分享就到这里,希望对大家有帮助。开发过程中遇到问题也可以在评论区交流~
—END—