chenjianfei commited on
Commit
921f42f
·
1 Parent(s): 49e5e54

update README

Browse files
Files changed (1) hide show
  1. README.md +10 -80
README.md CHANGED
@@ -1,80 +1,10 @@
1
- # LLM Demo (Gradio)
2
-
3
- ## 运行前
4
-
5
- ### 安装Ollama
6
-
7
- Linux:`curl -fsSL https://ollama.com/install.sh | sh`
8
- 详见[https://ollama.com/download](https://)
9
-
10
- ### 安装python环境
11
-
12
- ```
13
- conda create -n <env_name> python=3.10
14
- conda activate <env_name>
15
- conda install pytorch==2.4.1 torchvision==0.19.1 torchaudio==2.4.1 -c pytorch
16
- pip install -r requirements.txt
17
- ```
18
-
19
- ## 运行
20
- 运行完整功能,执行
21
- ```
22
- python demo.py
23
- ```
24
- 仅运行TTS,执行
25
- ```
26
- python tts_api.py
27
- ```
28
- 之后会弹出本地链接,点击,在浏览器中访问
29
-
30
- ## Finetune
31
- 本部分为基于LLaMa Factory微调大模型,并将其部署到ollama中的方法
32
- ### Step 1
33
- 基于LLaMa Factory的GUI界面训练模型,结束后导出。如果导出成功,可直接跳到step 3.3的“创建模型”的部分,因为导出功能会自动创建ModelFile(可能需要修改上下文ctx; 也支持在ModelFile中直接设置SYSTEM参数作为系统提示词). 如果导出错误看step 2
34
- ### Step 2
35
- 如果基础模型是量化模型,导出时会报错:ValueError: Cannot merge adapters to a quantized model,
36
- 因为经过LoRA微调的权重是浮点数,不能直接和基础量化模型合并,因此需要加载其非量化的版本再将LoRA权重和基础模型合并,
37
- 见notebook/微调准备和后处理.ipynb
38
- ### Step 3
39
- 合并后的模型需要转成GGUF格式才能用ollama部署。
40
- #### 3.1 编译llama.cpp
41
- ```
42
- git clone https://github.com/ggerganov/llama.cpp
43
- cd llama.cpp
44
- cmake -B build
45
- cmake --build build --config Release
46
- ```
47
- #### 3.2 转换成GGUF
48
- ```
49
- python convert_hf_to_gguf.py /path/to/your/merged_model_directory --outfile merged_model.gguf --outtype f16
50
- ```
51
- 其中outtype支持'f32', 'f16', 'bf16', 'q8_0', 'tq1_0', 'tq2_0', 'auto'等类型
52
-
53
- #### 3.3 在Ollama中部署微调后的模型
54
- * 创建一个名为Modelfile的文件,并在其中包含以下内容:
55
- ```
56
- FROM /path/to/merged_model.gguf
57
- ```
58
- * 创建模型
59
- ```
60
- ollama create my_merged_model -f Modelfile
61
- ```
62
- * 之后即可通过ollama run my_merged_model运行模型,通过ollama show my_merged_model查看模型信息
63
- ## 更新日志
64
- * 2025.04.21: 支持调用Finetune后的模型
65
- * 2025.04.16: 知识库调整: 1. 更改默认embed模型 2.json和md文件单独处理 3.支持SimCSE及相似度计算方式
66
- * 2025.04.15: 解决ollama上下文截断问题,改为根据token总数自动调整窗口长度
67
- * 2025.04.14: 支持检索内容及其分数(距离)显示在对话框,知识库根据角色动态配置
68
- * 2025.03.31: 角色扮演模式部分角色添加开场白
69
- * 2025.03.28: 支持回复重新生成
70
- * 2025.03.27: 支持Qwen系列模型
71
- * 2025.03.20: 支持单独运行TTS demo
72
- * 2025.03.18: 支持角色扮演模式,可动态选择不同角色及其设定方式
73
- * 2025.03.10: 支持联网搜索
74
- * 2025.03.07: 区分不同用户,支持历史会话的保存和恢复;支持本地RAG
75
- * 2025.03.06: 集成TTS功能
76
-
77
- ## Note
78
-
79
- * TTS默认不开启,以加快demo启动速度。点击TTS开关后,第一次执行时会加载模型
80
- * 对于Llasa系列模型,若上传自定义音频作为目标音色,需同时提供音频的文本作为输入。暂未支持ASR识别其内容
 
1
+ ---
2
+ title: {{LLM_demo}}
3
+ emoji: {{😄}}
4
+ colorFrom: {{red}}
5
+ colorTo: {{yellow}}
6
+ sdk: {{gradio}}
7
+ sdk_version: "{{5.22.0}}"
8
+ app_file: app.py
9
+ pinned: false
10
+ ---