四时宝库

程序员的知识宝库

学习Llama-index的第一课,简单查询

在编写代码前,我们先设置好环境:

1.在本地通过Ollama部署llama3模型及文本嵌入模型“nomic-embed-text”

ollama pull llama3
ollama pull nomic-embed-text
安装库
pip install llama-index-llms-ollama
pip install llama-index-embeddings-ollama

2.在MySQL中建立数据库school,表students,数据如下:

3.我们查询家庭地址在柳州的学生信息

#导入库
from llama_index.readers.database import DatabaseReader
from sqlalchemy import create_engine
from llama_index.llms.ollama import Ollama
from llama_index.core.settings import Settings
from llama_index.embeddings.ollama import OllamaEmbedding

#设置模型
Settings.llm=Ollama(model="llama3")
Settings.embed_model=OllamaEmbedding(model_name="nomic-embed-text")
eng=create_engine("mysql+pymysql://root:12345678@localhost:3306/school")

#构建查询数据
reader=DatabaseReader(engine=eng)
docs=reader.load_data(query="SELECT * FROM school.students order by address desc")
from llama_index.core import VectorStoreIndex
index=VectorStoreIndex.from_documents(docs)

#开始查询
q=index.as_query_engine()
print(q.query("列出所有家庭地址是柳州的学生信息。"))

4.结果:

According to the provided information, there is only one student with an address of 柳州:

* id: 7, name: 伍军, age: 17, address: 柳州, sex: 女

只有一条记录,很明显,得不到希望要的结果。需要对代码进行改进。

后事如何,下文分解。

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接