OpenBMB / ToolBench

[ICLR'24 spotlight] An open platform for training, serving, and evaluating large language model for tool learning.
https://openbmb.github.io/ToolBench/
Apache License 2.0
4.62k stars 397 forks source link

如何根据toollama_G123_dfs_train.json还原一个完整的对话? #217

Open DryPilgrim opened 7 months ago

DryPilgrim commented 7 months ago

您好,想请教以下问题,非常感谢您的回复:)

  1. 将一个完整的对话拆分成不同的step,然后训练时会把每个step最后一条assistant的message作为target。这样好像会造成一个问题:target不完整。如下,我们的目的是生成api 和 api_parameters,但这里只有api

    {
    "from": "assistant",
    "value": "\nThought: \nAction: transitaires_for_transitaires\nAction Input: {}"
    }
    ]
    },
  2. toollama_G123_dfs_train.json中同一个instruction的step不连续?step i 为什么缺失了? 比如,“I need to create a meme for my family reunion. Can you generate a Sponge Bob meme with the text 'Family love' on it? Additionally, I would like to generate a Pet Pet meme GIF using a family photo as the input image.”这个instruction在toollama_G123_dfs_train.json中有5个step,最大的是step 12.

  3. 如何还原出一个instruction的完整的对话呢?

DryPilgrim commented 7 months ago

我上面的表达好像有些问题,我分析了一些具体的数据,发现:

  1. 对于同一个instruction, 有不同的step,每个step代表了一个annotation路径(解决方案);
  2. 同一个instruction的steps不连续,step i 缺失了。
  3. 对于留下来的steps,
    • api选择是对的。
    • 存在不同的annotation路径.
    • 对于同一种annotation路径,存在不同的完成度,有的完成50%。有的完成100%, ...