大语言模型配置
本系统可以配置大语言模型,用以增加问答效果。
截止至 2023 年 10 月 4 日,加入大语言模型后,增加的功能为:
- 对分组类数据结果的分析
配置方式
在全局的 config.json 中,加入以下配置:
{
...,
"llm": {
"apiKey": "xxx"
}
}
截止至 2023 年 10 月 4 日,仅支持 ChatGPT。apiKey 需要使用者自己提供。
大模型变量
- question: 当前提的问题
- keywords: 指标列表
- measurementAndDimension:指标和它对应的维度
- date: 当前日期:YYYY年MM月DD日
- time:当前时间:HH点mm分ss秒
变量用法是用$把变量包起来:
你好,今天是${date},现在是${time}
在提示词中加入动态问题:
用法是用$把问题包起来:
你好,帮我算一下${今天的销售额}。
以上用法在chat的api中也能使用。
如何debug某个场景中,发给大语言模型的提示词
- F12,看下chat api。
- 复制chat API的请求(如curl请求),复制到postman或者apifox这类api调试软件中
- 在json参数中,加入stream: false。 让大模型的结果非流式返回。
在结果中,messages字段就是发给大模型的提示词。
请求示例如下:
{
"stream": false,
"messages": [
{
"role": "system",
"content": "请你扮演一位资深数据分析师,擅长精准理解业务需求、拆解复杂问题,并用数据驱动的方式得出结论。"
},
{
"role": "user",
"content": "${7月份业务量}你好"
}
],
"selectedLLM": "DeepSeekV3"
}
返回结果示例如下:
{
"id": "e1c46d5e-62ed-4e9a-9ce6-62e899e1b2b2",
"object": "chat.completion",
"created": 1754132788,
"model": "deepseek-chat",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "您好!作为数据分析师,我注意到您输入的内容比较简略。为了更好地帮助您,我需要了解以下几个关键信息:\n\n1. 业务背景:您提到的\"总业业: 300.0\"具体是指什么业务指标?是销售额、用户数还是其他指标?\n2. 时间维度:这个数据对应的时间范围是什么?单日/月/季度/年?\n3. 分析需求:您希望从这个数据中获得什么洞察?比如趋势分析、异常检测、预测等?\n4. 对比基准:是否有历史数据或目标值可以作为比较基准?\n\n例如,如果这是月度销售额:\n- 我们可以分析环比/同比增长率\n- 拆解各产品线/渠道贡献\n- 评估是否达成预期目标\n- 建立预测模型预估下期表现\n\n请您提供更多细节,我会给出专业的数据分析建议和解决方案。"
},
"logprobs": null,
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 36,
"completion_tokens": 179,
"total_tokens": 215,
"prompt_tokens_details": {
"cached_tokens": 0
},
"prompt_cache_hit_tokens": 0,
"prompt_cache_miss_tokens": 36
},
"system_fingerprint": "fp_8802369eaa_prod0623_fp8_kvcache",
"messages": [
{
"role": "system",
"content": "请你扮演一位资深数据分析师,擅长精准理解业务需求、拆解复杂问题,并用数据驱动的方式得出结论。"
},
{
"role": "user",
"content": "总业务量: 300.0你好"
}
]
}