Create a Python package.
Project description
🔥ChatLLM 基于知识库🔥
ChatLLM API 分发系统上线
Click to Star⭐️免费领取tokens
Install
pip install -U chatllm
Docs
Usages
目前适配的LLMs
计划推出国内 oneapi,支持各种主流大模型,兼容openai客户端生态。
from chatllm.applications import ChatBase
qa = ChatBase()
qa.load_llm(model_name_or_path="THUDM/chatglm-6b")
for i in qa(query='周杰伦是谁', knowledge_base='周杰伦是傻子'):
print(i, end='')
# 根据已知信息无法回答该问题,因为周杰伦是中国内地流行歌手、演员、音乐制作人、导演,
# 是具有一定的知名度和专业能力的人物,没有提供足够的信息无法判断他是傻子。
OpenaiEcosystem
Click to 无缝对接openai生态
# 服务端
pip install "chatllm[openai]" && chatllm-run openai <本地模型地址>
- SDK:
pip install openai
import openai
openai.api_base = 'http://0.0.0.0:8000/v1'
openai.api_key = 'chatllm'
prompt = "你好"
completion = openai.Completion.create(prompt=prompt, stream=True, model="text-davinci-003")
for c in completion:
print(c.choices[0].text, end='')
# 你好👋!我是人工智能助手 ChatGLM-6B,很高兴见到你,欢迎问我任何问题。
- 客户端:点击下载chatbox,也可接入客户端
openai_keys: 不定期更新免费keys
ChatOCR
Click to ChatOCR
from meutils.pipe import *
from chatllm.llmchain.applications import ChatOCR
llm = ChatOCR()
file_path = "data/invoice.jpg"
llm.display(file_path, 700)
llm.chat('识别编号,公司名称,开票日期,开票人,收款人,复核人,金额', file_path=file_path) | xprint
ChatMind
Click to ChatMind
pip install "chatllm" && chatllm-run webui --name chatmind
ChatPDF
Click to ChatPDF
pip install "chatllm[pdf]" && chatllm-run webui --name chatpdf
- python交互
from chatllm.applications.chatpdf import ChatPDF
qa = ChatPDF(encode_model='nghuyong/ernie-3.0-nano-zh')
qa.load_llm(model_name_or_path="THUDM/chatglm-6b")
qa.create_index('财报.pdf') # 构建知识库
for i in qa(query='东北证券主营业务'):
print(i, end='')
# 根据已知信息,东北证券的主营业务为证券业务。公司作为证券公司,主要从事证券经纪、证券投资咨询、与证券交易、
# 证券投资活动有关的财务顾问、证券承销与保荐、证券自营、融资融券、证券投资基金代销和代销金融产品待业务。
- 支持召回结果查看
Deploy
Click to Deploy
- ChatGLM-6B 模型硬件需求
量化等级 | 最低 GPU 显存(推理) | 最低 GPU 显存(高效参数微调) |
---|---|---|
FP16(无量化) | 13 GB | 14 GB |
INT8 | 8 GB | 9 GB |
INT4 | 6 GB | 7 GB |
TODO
Click to TODO
-
ChatLLM 应用
- 接入非结构化文档(已支持 md、pdf、docx、txt 文件格式)
- 搜索引擎与本地网页接入
- 结构化数据接入(如 csv、Excel、SQL 等)
- 知识图谱/图数据库接入
- 增加 ANN 后端,ES/RedisSearch【确保生产高可用】
- 增加多级缓存缓存
-
多路召回
- 问
- 标量匹配
- 多种向量化,向量匹配
- 增加相似问,换几个问法
- 高置信度直接返回答案【匹配标准问】
- 答
- 高置信度篇章
- 增加上下文信息
- 增加夸篇章信息
- 增加召回信息的相似信息
- 提前生成标准问,匹配问
- 拒绝推断
- 问
-
增加更多 LLM 模型支持
-
增加更多 Embedding 模型支持
-
增加一键启动 webui
- 利用 streamlit 实现 ChatPDF,一键启动
chatllm-run webui --name chatpdf
- 利用 gradio 实现 Web UI DEMO
- 添加输出内容及错误提示
- 引用标注
- 增加知识库管理
- 选择知识库开始问答
- 上传文件/文件夹至知识库
- 删除知识库中文件
- 利用 streamlit 实现 ChatPDF,一键启动
-
增加 API 支持
- 利用 Fastapi/Flask/Grpc
实现流式接口
chatllm-run openai <本地模型地址> --host 127.0.0.1 --port 8000
- 前后端分离,实现调用 API 的 Web UI Demo
- 利用 Fastapi/Flask/Grpc
实现流式接口
交流群
若二维码失效加微信拉群 313303303
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
chatllm-2024.5.30.14.6.14.tar.gz
(205.9 kB
view details)
Built Distribution
File details
Details for the file chatllm-2024.5.30.14.6.14.tar.gz
.
File metadata
- Download URL: chatllm-2024.5.30.14.6.14.tar.gz
- Upload date:
- Size: 205.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.10.14
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 968c8a3259978de2d289028b97101133292dc95f30e780e92bf0246520322f7d |
|
MD5 | da7f927340305cc2bf607b373ede6e06 |
|
BLAKE2b-256 | a4c45ea3330a37dcf1e72d6b16b7e8348505d72b4fadfa995aafecf54c1c4e03 |
File details
Details for the file chatllm-2024.5.30.14.6.14-py3-none-any.whl
.
File metadata
- Download URL: chatllm-2024.5.30.14.6.14-py3-none-any.whl
- Upload date:
- Size: 347.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.10.14
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b101351815519113c6b5882e8da91a484265f57cc01ad80172fb4f5b2cf2e28e |
|
MD5 | 19e525a5929db27590dc7143b4e42a08 |
|
BLAKE2b-256 | 8819384646d1f32f977b1ca878eee8f4f726d5a5e29c496b79a3b64493cdc5de |