Hey can anybody help me, i’ve been going around in circles for days here!

Trying to upload training data but getting
“Error creating file for fine-tuning: 415 - Unsupported Media Type”
No matter what I do.

Here’s my latest code to upload it

<%
’ Define your OpenAI API key
apiKey = “xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx”

’ Specify the path to your JSONL file
jsonlFile = “scott-trainingdata.jsonl”

’ Read the JSONL data from the file
Set fs = Server.CreateObject(“Scripting.FileSystemObject”)
Set jsonlFileObject = fs.OpenTextFile(Server.MapPath(jsonlFile), 1, False)
jsonlData = jsonlFileObject.ReadAll
jsonlFileObject.Close

’ Create a file for fine-tuning
Set objHTTP = Server.CreateObject(“MSXML2.ServerXMLHTTP.6.0”)
objHTTP.Open “POST”, “link to upload removed due to forum terms”, False
objHTTP.setRequestHeader “Content-Type”, “application/octet-stream”
objHTTP.setRequestHeader “Authorization”, "Bearer " & apiKey

’ Send the request with the file content as octet-stream
objHTTP.Send jsonlData

’ Check if the file creation was successful
If objHTTP.Status = 200 Then
’ Parse the JSON response to get the file ID
Set json = Server.CreateObject(“JSONLib2.JSON”)
json.LoadJSON objHTTP.responseText
fileId = json.data.id

’ Initiate the fine-tuning job
Set objHTTP = Server.CreateObject(“MSXML2.ServerXMLHTTP.6.0”)
objHTTP.Open “POST”, “link to fine tunes removed due to forum terms”, False
objHTTP.setRequestHeader “Content-Type”, “application/json”
objHTTP.setRequestHeader “Authorization”, "Bearer " & apiKey

’ Prepare the fine-tuning payload
fineTunePayload = “{”“training_file”“: “”” & fileId & “”“, ““model””: ““gpt-3.5-turbo””}”

’ Send the fine-tuning request with the payload
objHTTP.Send fineTunePayload

’ Check if the fine-tuning job creation was successful
If objHTTP.Status = 200 Then
’ Fine-tuning job created successfully
Response.Write “Fine-tuning job created successfully.”
Else
’ Handle any errors
Response.Write "Error creating fine-tuning job: " & objHTTP.Status & " - " & objHTTP.statusText
End If
Else
’ Handle any errors
Response.Write "Error creating file for fine-tuning: " & objHTTP.Status & " - " & objHTTP.statusText
End If
%>

Here is a sample from my jsonL file
{“messages”: [{“role”: “system”, “content”: “Your name is Scott. You are a support engineer.”}, {“role”: “user”, “content”: “My payment did not work”}, {role": “assistant”, “content”: “We are sorry to hear your payment did not work on the website. We don’t have access to see why the payment failed, nor can we see your payment details. I would advise you to try a different card or make the Payment with PayPal, if you have a PayPal account.”}]}
{“messages”: [{“role”: “system”, “content”: “Your name is Scott. You are a support engineer.”}, {“role”: “user”, “content”: "How do I find “}, {role”: “assistant”, “content”: "We have made our website really easy. "}]}

For one thing your jsonl has poor formatting.

The third message, the role param is missing a left side double quote.

Thanks for the reply. I finally scrapped the ASP and used curl and it worked a treat. But the trained GPT is talking complete garbage, giving random answers. It cant even answer work it works for it gives different company names each time. Whats going on?!