在Python中,我有一个sqlite3内存数据库:
db = sqlite3.connect(':memory:')
我用一个简单的表格和 pandas 数据框中的一些数据填充了它。
我也已经设立了法学硕士。
现在,我想将它传递到 langchain
SQLDatabaseChain
,如下所示:
from langchain_community.utilities import SQLDatabase
db_chain = SQLDatabaseChain.from_llm(llm, db)
但是 sqlite 数据库在内存中,看起来该函数不会接受它。
我得到:
File "/home/me/python3.8/site-packages/langchain_experimental/sql/base.py", line 226, in from_llm
prompt = prompt or SQL_PROMPTS.get(db.dialect, PROMPT)
AttributeError: 'sqlite3.Connection' object has no attribute 'dialect'
有人知道如何避免将数据库写入磁盘并仍然使用此工具吗?
找到一个简单的答案:
db = SQLDatabase.from_uri("sqlite://")