Skip to content

lta155/chat-with-llm-universe

Repository files navigation

chat-with-llm-universe

此项目是基于大语言模型的llm-universe问答助手,是使用langchain 0.3 以 llm-universe 第一部分为主体内容做的RAG应用。本项目除加载markdownnotebook文件外均使用Langchain框架实现。

solution

运行步骤

  • api运行,以智谱的glm-4-plusembedding-3为例:

    安装相关依赖

    pip install requirements.txt

    .env.template重命名为.env,并在文件中填写智谱AI key。 key可以从智谱大模型平台获取。

    在命令行中启动streamlit服务

    streamlit run app.py
  • 本地运行:

    安装相关依赖

    pip install requirements_local.txt

    下载llm权重并接入langchain,可以参考qwen.py

    本地使用 embedding model,并在create_db.pyqa_chain.py中更改embedding,可以参考HuggingFaceEmbeddings中example。

    构建向量数据库

    python create_db/create_db.py

    app.py中修改QA_chain中相应参数,并在命令行中启动streamlit服务。

    streamlit run app.py

代码结构

chat-with-llm-universe/
│
├── create_db/(存放加载文档并构建向量数据库的代码)
│   ├── create_db.py(加载文档并构建向量数据库)
│   └── load_data.py(存放加载文档的函数)
│
├── knowledge_db/(存放llm-universe第一部分及向量数据库)
│   ├── notebook/(存放llm-universe第一部分)
│   │   └── ...
│   └── vector_db/(存放向量数据库)
│       └── ... 
│
├── llm/(存放llm相关内容)
│   ├── llm.py(接入langchain的方法)
│   └── qwen.py(继承langchain的LLM示例)
│
├── qa_chain/(存放检索问答链)
│   └── qa_chain.py(检索问答链)
│
├── .env.template(环境变量模版文件)
│
├── app.py(使用Streamlit部署应用)
│
├── requirements_local.txt
│
├── requirements.txt

致谢

self-llm:llm接入langchain

About

llm-universe问答助手

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published