我们组主要需要实现知识库功能(上传文件,提问回答文件中的内容)与输入股票名字生成研报功能
知识库功能的使用(即langchain-chatchat):
- 上传文件到知识库
2.选择知识库问答模式
3.提问能在知识库中找到答案的问题。
输入股票名字生成研报的功能使用(即finGPT中的FinGPT_ FinancialReportAnalysis):输入股票名字,如苹果的为AAPL,即可得到研报.pdf。
效果如下:
接下来还需要实现前段界面的搭建,金融新闻(咨询or研报)搜索与分析的功能,以及各功能的整合。最终预期:可选择知识库问答与联网问答,外加输入股票名称生成研报的额外功能(命名为快速分析)。
项目逻辑
1. 用户:可以通过 run_gradio 启动整个服务;
2. 服务层调用 qa_chain.py 或 chat_qa_chain 实例化对话检索链对象,实现全部核心功能;
3. 服务层和应用层都可以调用、切换 prompt_template.py 中的 prompt 模板来实现 prompt 的迭代;(没做该功能)
4. 也可以直接调用 call_llm 中的 get_completion 函数来实现不使用数据库的 LLM;
5. 应用层调用已存在的数据库和 llm 中的自定义 LLM 来构建检索链;
6. 如果数据库不存在,应用层调用 create_db.py 创建数据库,该脚本可以使用 zhipuai embedding
本周还对前端界面进行了简单规划,了解了项目逻辑,以及各部分功能,对分工进行了调整。