#Fine tuning issues with technical specifications on GPT 3

20 messages · Page 1 of 1 (latest)

wraith peak
#

Hi, I'm trying to build a customer service chatbot, with little success with my earlier finetuning models.
any idea how i get to prioritize the data(Product specification: values) in the JSONL
I have tried lowering the temperature and top_p values.

I'm concerned the data set was not large enough, it only had 100 or so prompt and completion combinations.

final mist
#

Without being mean, have you considered the costs of a chatbot via fine tuning? Without any optimizations you'll have to store the full conversation each time, and at $0.12/1k tokens you'll be getting to $0.50 per request easily and upwards to past $1/request.

Ideally, and this may change soon but the best option seems to be using the base model with embeddings, and using prompt injection to give context

#

Even with my optimizations and using the base model I'm doing about 500 tokens per request which is about $0.06 if I used fine tuning

final mist
#

Not to mention the potential for a malicious person to ruin your account by spamming the bot because your token limit would have to be very high.

wraith peak
#

@final mist thanks for responding, sorry if i wasn't clear it was a question answering bot with no memory

I meant: if there is a way to get the finetuned model to pickup specific values from the training data.

Ex: maximum voltage in the data is 1.71 V
But when i ask: What is the maximum voltage?
It responds with random answers which are very inconsistent like 2.1 volts or 3.36 V or sometimes with 1.71 V(Which is the right answer)

Is there a way to train the model to give a consistent answer.

My use case is very specific, My team has to go through tens of pages of the datasheet to find specific value, a simple search might not get it done.
i was hoping if i could finetune GPT 3 to create a questions answering bot.

If you are open to working with us on solving this, i can check with my boss and work something out.

final mist
#

@wraith peak Hi, yes of course. I'm more than happy to help. No need for any contractual. I learn with questions like these, so thank you.

#

You may want to consider using Embeddings for this information. Not only does it open up a world of data science, it's cheaper than fine tuning when utilized correctly

#

However, to your question. There could be some issues. I would change your prompt to say "I don't know" if it wasn't able to find the information.

#

Lastly, you should try messing with the settings. For a factual bot you'd want it to have 0 for temperature, and not penalized for repetition

#

If, you do all this, and ask it for a question that it should know, I would try adding more prompts as examples, and/or restructure your prompt.

#

A huge issue I've noticed is people witnessing the bot output nonsense answers to "simple questions"

#

If your question requires steps of logic. Such as "okay, the resistance is this, and the current is this, therefore xxx"

#

You need to explicitly define each step as guidance

#

So in your fine tuning prompts you should do.

What is the voltage of x resistance and y current?
If the resistance is x, and the current is y, using ohms law as such: the answer would be z

#

Also, adding "Let's think step by step" has been shown to drastically improve the answer

#

A great way that was mentioned in the documentation is to ask yourself the same question, and then write down the steps to find the answer. these steps should be included in your prompt as guidance

#

If someone asked you what 36x373 is, and you only had 5 seconds to respond, you'd probably make up an answer as well

#

I hope this helps

wraith peak
#

yes definitely, given me a lot to try out. I have not yet tried embedding, looking into it now.

I have had some success with setting the temp to 0, but unless i penalize for repetitions it just repeats the answer a bunch of times or sometimes the question.

TBH this is all very new to me, i was just playing around with chatgpt, and pasted a few pages of the datasheet into the prompt, and that allowed me to query not just specific values from the unstructured data, but the answers were very consistent and accurate, i kind of was hoping finetuning would be something like that.

At the moment i have not considered conditional values, might be a good add on in the future.
also since our main product lets our team run tests on physical hardware, it might not be important to them.

i will tryout embedding, and update you on the progress

final mist
#

It is most likely how they trained ChatGPT to answer questions. Guidance works best it seems for me by establishing a path of logic and a label for the answer