首先,它将查看表格:Action: sql_db_list_tables使用工具sql_db_list_tables 给定表格作为观察,thinks然后确定下一个action: Observation: Album, Artist, Customer, Employee, Genre, Invoice, InvoiceLine, MediaType, Playlist, PlaylistTrack, Track Thought: I should query the schema of the Invoice and Custom...
db = SQLDatabase.from_uri('postgresql+psycopg2cffi://admin:password123@localhost/admin') llm = ChatOpenAI(model_name="gpt-3.5-turbo") toolkit = SQLDatabaseToolkit(db=db,llm=llm) agent_executor = create_sql_agent( llm=llm, toolkit=toolkit, verbose=True ) agent_executor.run("using the te...
Action: list_tables_sql_db Action Input: "" Observation: customers, employees, payments, products, productlines, orderdetails, offices, orders Thought:我应该查询'products'和'orderdetails'表来得到每个产品的总销售收入 Action: query_checker_sql_db Action Input: SELECT products.productName, SUM(order...
getenv("OPENAI_API")) # Creating SQL Database Toolkit toolkit = SQLDatabaseToolkit(db=db, llm=model) # Creating and Running a SQL Agent agent_executor = create_sql_agent( llm=model, toolkit=toolkit, verbose=True, agent_type=AgentType.ZERO_SHOT_REACT_DESCRIPTION, ) agent_executor.run("Num...
SQL Query:"""prompt=ChatPromptTemplate.from_template(template)db=SQLDatabase.from_uri("sqlite:///./Chinook.db")defget_schema(_):returndb.get_table_info()defrun_query(query):returndb.run(query)model=ChatOpenAI(model="gpt-3.5-turbo",)sql_response=(RunnablePassthrough.assign(schema=get_schema...
3、利用use_query_checker=True进行查询检查:二次调用llm对生成的SQL代码进行验证。4、利用代理改进文本转SQL效果:使用SQLDatabaseToolkit中的工具如sql_db_list_tables和sql_db_query,结合提示构建查询。5、利用工具和检索器改进文本转SQL效果:收集与特定问题相关的动态示例,使用向量数据库和自定义检索...
SQLDatabaseChain是langchain框架自带的数据库自然语言交互工具,其内部通过sqlalchemy来获取数据库的表名和表结构、字段信息,然后将数据库的信息和用户的自然语言请求一起发送给大模型进行分析,让大模型返回sql语句后,执行sql,并返回执行结果。 db_chain = SQLDatabaseChain.from_llm(llm, db, verbose=True,top_k=...
class SQLDatabase: """SQLAlchemy wrapper around a database.""" def __init__( self, engine: Engine, schema: Optional[str] = None, metadata: Optional[MetaData] = None, ignore_tables: Optional[List[str]] = None, include_tables: Optional[List[str]] = None, sample_rows_in_table_info:...
SQLDatabase.from_uri ( "sqlite:///Chinook.db", sample_rows_in_table_info=2) llm = OpenAI(temperature=0, verbose=True) db_chain = SQLDatabaseChain.from_llm(llm, db, verbose=True) #db_chain.run("How many employees are there?") db_chain.run("List all the tables in the database?
Action: sql_db_list_tables Action Input: Observation: trips Thought: This table is relevant, so I should query the schema. Action: sql_db_schema Action Input: trips Observation: CREATE TABLE trips ( tpep_pickup_datetime TIMESTAMP, tpep_dropoff_datetime TIMESTAMP, trip_distance FLOAT, fare_...