Sam Lin

Sam Lin

2024-12-18-llm评测开发日志

评测是一项脑力活和智力活结合

  1. fastapi一键模型部署
  2. flask配合算法套件, 搭建agent,workflow
  3. agent:Thought→ Action→ Observation - Reason+Act = ReAct模式 先想,再干,再观察结果,再将结果传递到下一层,再想,再干
  • Prompt 模板中 few shot 中的内容(ReAct模式的case)
  • function calling 中的外部工具定义(联网搜索,多模态)

dify-access

bg

我疑惑的就是他们 评出来这个分 有啥用。 聊天机器人的回答 靠这几个因素: 1. 基座模型 ;2. prompt ;3. 记忆 ;4. 等其他优化; 。 评完之后,更新prompt,更换模型, 再对原来我们采集的 数据, 根据用户回答,重新生成回答, 再评分。 这样轮回

不同的bot,不同用途,使用不同的 评测方式

背景

社交 agi 聊天机器人 ( 基座模型, prompt, 其他策略) 怎么观察,怎么评测 去采集聊天机器人的发言,进行样本制作

所有样本放在一个大集合,可以通过 tag等其他筛选条件, 整理一个子集, 因为不同tag的评分逻辑会有差别,类似于穿进去的参数不同 这个子集通过打分脚本,输出分数 这样我们就可以判断基座模型,prompt 等其他策略是否有效

再样本放到一个集合中, 再评测打分。 沉淀的工具链,技术+业务,形成壁垒, 只有我们能做

权限管理 评测方法 打标方法 自动化评测 怎么利用我们打标的数据 有些用户的问题,特别难回答,容易答不好,

比如整理一个 情感问题一百答 可以作为 模型 prompt的评分基础

数据沉淀 技术沉淀 流程沉淀

2024-11-11

数据集tab逻辑

  • filter
    • filter加一个, 时分秒,filter和 chat弹窗联动
  • table
    • table加一列,updatetime 更新时间
    • 粒度 session
  • chat弹窗
    • 记忆点 正序排
    • 和filter 更新时间 联动(时分秒
    • 排序 选项
    • 加载速度慢(后端)
  • chat弹窗 message 打标
    • 点击 button, good,bad case
    • ground-truth, prediction, score
    • 加一个选项,默认时间,开始时间

评测集tab逻辑

  • table
    • 粒度:message
    • 点击 出现 chat弹窗
  • chat弹窗
    • 上下文长度 default 10

2024-11-13

拉取mysql

mysql -h 127.0.0.1 -P 3306 -u panshi -ppanshi123456 --ssl-mode=disabled

启动docker

cd docker cp middleware.env.example middleware.env

停止命令为:docker compose -f docker-compose.middleware.yaml -p dify down

sudo docker compose -f docker-compose.middleware.yaml -p dify up -d cd mysql

停止命令为:docker compose -f docker-compose.mysql.yaml -p dify down

sudo docker compose -f docker-compose.mysql.yaml -p mysql up -d

启动

poetry run python3 -m flask db upgrade poetry run python3 -m flask run --host 0.0.0.0 --port=5001 --debug

管理员账号

email: wuzhenlin@gmail.com username : wuzhenlin pwd : Samlin@9

加入 时间筛选 ant design

  1. defaultValue 默认时间
  2. 渲染后,默认加载

加入表格列

代办

  • 评测集建立、导入、删除。
  • 指定对话消息加入到评测集。
  • 对话筛选框增加按多个userId、robot筛选。
  • 对话列表加载较慢。

精确搜索:biz_code, robot_id ,sender_type, send_time, 模糊搜索:biz_code, sender_type,send_time,

复现任务目的: 把badcase再跑一遍, 看下能否复现, 或者已经解决 以睡觉了嘛为例. 在评测平台 搜索页面, 使用session_id 和 msg_id找到 消息后, report到评测集; 跳转到 评测页面, 对单条消息, 发起复现任务(和正常的评测任务区别开) ; 任务结束后, 返回两个东西

  1. 复现任务的 参数, json格式, 用于检查评测平台的逻辑和 LLM生成的逻辑是否一样
  2. 多次反复生成的结果, 列表格式

多选查询

每次,查询一个, 累加 337294912:9121702224 横着放,弄一些省略号 python sqlalchemy in_

form:单句 评估, 参数配置,次数

返回结果: debug信息,

2024-12-26

  1. 监控
  • 抽样, 模型
  1. 指标,业务能给出来,
  2. 任务创建的时候, task

2025-1-2

2025-1-14 评测系统迭代方向

  1. 评测脚本谁来出
  1. 算法现有的评测步骤,哪些东西需要自动化
  1. 评测支持一次性,调不同版本的接口,从而可以进行对比

2025-4-8-评测规范化

怎么确定规范化的指标,方法论