Added parameters for control
This commit is contained in:
parent
bfe9902852
commit
1262b9f22a
@ -3,10 +3,9 @@
|
|||||||
## 1. 使用方法
|
## 1. 使用方法
|
||||||
|
|
||||||
1. 检查 `requirements.txt` 中的依赖是否满足。
|
1. 检查 `requirements.txt` 中的依赖是否满足。
|
||||||
|
|
||||||
2. 调整代码中 `system_prompt`,确保与repo最新版本一致,保证生成QA的多样性和稳定性。
|
2. 调整代码中 `system_prompt`,确保与repo最新版本一致,保证生成QA的多样性和稳定性。
|
||||||
|
3. 将txt文件放到与 `model`同级目录 `data`文件夹中.
|
||||||
3. 在 `config/config.py` 配置所需的 API KEY,从 `main.py` 启动即可。生成的 QA 对会以 jsonl 的格式存在 `data/generated` 下。
|
4. 在 `config/config.py` 配置所需的 API KEY,从 `main.py` 启动即可。生成的 QA 对会以 jsonl 的格式存在 `data/generated` 下。
|
||||||
|
|
||||||
### 1.1 API KEY 获取方法
|
### 1.1 API KEY 获取方法
|
||||||
|
|
||||||
@ -16,8 +15,6 @@
|
|||||||
|
|
||||||
前往[模型服务灵积-API-KEY管理 (aliyun.com)](https://dashscope.console.aliyun.com/apiKey),点击”创建新的 API-KEY“,将获取的 API KEY 填至 `config/config.py` 中的 `DASHSCOPE_API_KEY` 即可。
|
前往[模型服务灵积-API-KEY管理 (aliyun.com)](https://dashscope.console.aliyun.com/apiKey),点击”创建新的 API-KEY“,将获取的 API KEY 填至 `config/config.py` 中的 `DASHSCOPE_API_KEY` 即可。
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## 2. 注意事项
|
## 2. 注意事项
|
||||||
|
|
||||||
### 2.1 系统提示 System Prompt
|
### 2.1 系统提示 System Prompt
|
||||||
@ -32,8 +29,6 @@
|
|||||||
|
|
||||||
目前仅支持了 txt 格式,可以将清洗好的书籍文本放在 `data` 文件夹下,程序会递归检索该文件夹下的所有 txt 文件。
|
目前仅支持了 txt 格式,可以将清洗好的书籍文本放在 `data` 文件夹下,程序会递归检索该文件夹下的所有 txt 文件。
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## TODO
|
## TODO
|
||||||
|
|
||||||
1. 支持更多模型(Gemini、GPT、ChatGLM……)
|
1. 支持更多模型(Gemini、GPT、ChatGLM……)
|
||||||
|
@ -25,4 +25,13 @@ system_prompt_file_path = os.path.join(base_dir, 'system_prompt_v2.md') # sy
|
|||||||
环境变量
|
环境变量
|
||||||
"""
|
"""
|
||||||
# api-keys
|
# api-keys
|
||||||
DASHSCOPE_API_KEY = 'sk-xxxxxxxx'
|
DASHSCOPE_API_KEY = ''
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
"""
|
||||||
|
控制参数
|
||||||
|
"""
|
||||||
|
storage_interval = 10
|
||||||
|
window_size = 8
|
||||||
|
overlap_size = 2
|
||||||
|
@ -34,15 +34,20 @@ def generate_qa(
|
|||||||
file_list = get_file_list()
|
file_list = get_file_list()
|
||||||
storage_counter = 0
|
storage_counter = 0
|
||||||
storage_list = []
|
storage_list = []
|
||||||
for file_name in file_list:
|
for file_path in file_list:
|
||||||
contents = get_txt_content(file_name)
|
contents = get_txt_content(file_path)
|
||||||
storage_list = []
|
storage_list = []
|
||||||
storage_jsonl_path = os.path.join(result_dir, f'{current_time}-{file_name}-{model_name}.jsonl')
|
|
||||||
|
_, file_name = os.path.split(file_path)
|
||||||
|
storage_jsonl_path = os.path.join(
|
||||||
|
result_dir, f'{current_time}-{file_name}-{model_name}.jsonl')
|
||||||
logger.info(f'The generated QA will be stored in {storage_jsonl_path}.')
|
logger.info(f'The generated QA will be stored in {storage_jsonl_path}.')
|
||||||
|
|
||||||
for content in tqdm(contents):
|
for content in tqdm(contents):
|
||||||
response = model_caller(content)
|
response = model_caller(content)
|
||||||
|
# print(response) # 打印输出
|
||||||
captured_qa = capture_qa(response)
|
captured_qa = capture_qa(response)
|
||||||
|
# print(captured_qa) # 打印QA对
|
||||||
if captured_qa is None:
|
if captured_qa is None:
|
||||||
continue
|
continue
|
||||||
|
|
||||||
@ -64,4 +69,7 @@ def generate_qa(
|
|||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
|
|
||||||
|
# 创建generated文件夹
|
||||||
|
os.makedirs('./data/generated', exist_ok=True)
|
||||||
generate_qa()
|
generate_qa()
|
||||||
|
Loading…
Reference in New Issue
Block a user