Finetuning for chatbot

I’m trying to finetune a model on call transcripts.
I wanted to ask what would a single data point be?
is it going to be a single message and a single completion?
eg:
prompt: Best country with nature ?
ans: any country (maybe singapore)
but in this case if I type another question, will it get the context?
eg
prompt: I might travel there next year, can you tell me some best places to travel there?
I don’t think so it would be able to respond.

So for a single data point, should I store the whole conversation till now in the prompt?
In the case given above, this works best
eg:
prompt: Best country with nature ?
ans: any country (maybe singapore)
prompt: Best country with nature ?\nans: any country (maybe singapore) I might travel there next year, can you tell me some best places to travel there?
ans: Following are some great places to visit in the (country name)…

Please help

I haven’t tried this personally, but as far as I understand from other guides, it i better to store the entire conversation. That will give context needed to answer the second question appropriately.

Imagine for example if your second question were “What is the capital of that country?” Then it suddenly becomes vital to know whether the country in question was Singapore or some other country.

Hi Bjorn. If you’re trying to build a “travel agent” chat based on call transcripts, you should probably start by defining the “2 core” engines your bot will be operating within:

  1. Destination information database.
  2. Travel agent actions workflow.

… And this before even starting looking into APIs…

  1. What information you need to have about your destinations and how you organize/store it

  2. What is the workflow of the “travel agent” work done for human:
    2.1. What is the data agent needs to have from human
    2.2 what are the tasks agent needs to fulfill
    2.3 how to use the data from human to fulfill the tasks
    2.4 what order the tasks need to be done in
    2.5 how do you define a task complete
    … Etc.

One you have that on paper, your bot interactions will be reduced to a list of tasks and the order you need to do them in.

Then you start seeing how to use API to do those tasks one by one and what context the bot will need from you.

Once you clearly see the above, then you can test prompts in playground to evaluate the quality of responses (or even if that is feasible) and see if you need to fine-tune answers on any of the steps.

Then you will be able to build a workflow of the conversation (so that the bot understands the next task it needs to do).

Then you go in development of code using the APIs.

That’s pretty much the same teaching as done on noob human travel agent but for machine.

Hope that helps.