conversation now dumps to file when exit

This commit is contained in:
2024-11-28 14:18:42 +13:00
parent a6661ca102
commit 0421f76737
2 changed files with 45 additions and 0 deletions

1
lastConvo.txt Normal file
View File

@@ -0,0 +1 @@
[ {"role": "system", "content": "You are ChatGPT, an AI that assists with conversations."} ]

44
openAI.v2 Executable file
View File

@@ -0,0 +1,44 @@
#!/bin/bash
OPENAI_API_KEY=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
ORG_ID=org-JbtjrxWLQ3WNLtcNGXfQGp49
PROJECT_ID=proj_pCrxzr6NUI5WkiqMF5JNp2Ou
let conversation_history=$(echo "$conversation_history" | jq --arg content "$user_input" '. + [{"role": "user", "content": $content}]')
function exit_func() {
echo $conversation_history > lastConvo.txt
exit 0
}
trap exit_func SIGINT
conversation_history='[
{"role": "system", "content": "You are ChatGPT, an AI that assists with conversations."}
]'
while true; do
# Read user input
read -p "You: " user_input
# Add user message to the conversation history
# Make the API request with the updated conversation history
response=$(curl -s https://api.openai.com/v1/chat/completions \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-4o",
"messages": '"$conversation_history"'
}')
# Extract the assistant's response
assistant_reply=$(echo "$response" | jq -r '.choices[0].message.content')
# Output the assistant's reply
echo "ChatGPT: $assistant_reply"
# Add assistant response to the conversation history
conversation_history=$(echo "$conversation_history" | jq --arg content "$assistant_reply" '. + [{"role": "assistant", "content": $content}]')
done