diff options
Diffstat (limited to 'bin/gpt')
-rwxr-xr-x | bin/gpt/gpt | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/bin/gpt/gpt b/bin/gpt/gpt index 4288851..0383dd0 100755 --- a/bin/gpt/gpt +++ b/bin/gpt/gpt | |||
@@ -165,7 +165,7 @@ _get_content() { | |||
165 | fi | 165 | fi |
166 | done | 166 | done |
167 | # Exit 1 when "--skip" is specified, but no STDIN and CONTENT is given | 167 | # Exit 1 when "--skip" is specified, but no STDIN and CONTENT is given |
168 | elif [[ "$round" -eq 1 && -z "${content}${data}" ]]; then | 168 | elif [[ ! -s "$cache" && -z "${content}${data}" ]]; then |
169 | echo -e "No data from STDIN\n" | 169 | echo -e "No data from STDIN\n" |
170 | exit 1; | 170 | exit 1; |
171 | fi | 171 | fi |
@@ -288,7 +288,6 @@ INDEX= | |||
288 | cache=$(mktemp -t gpt.XXXXXX) && touch "$cache" | 288 | cache=$(mktemp -t gpt.XXXXXX) && touch "$cache" |
289 | #trap "rm $cache" EXIT | 289 | #trap "rm $cache" EXIT |
290 | session=() | 290 | session=() |
291 | round=1 | ||
292 | 291 | ||
293 | # Allow user input system message | 292 | # Allow user input system message |
294 | if [ "$SYSTEM_PROMPT" = true ]; then | 293 | if [ "$SYSTEM_PROMPT" = true ]; then |
@@ -346,10 +345,12 @@ EOF | |||
346 | 345 | ||
347 | # Append newest message into session | 346 | # Append newest message into session |
348 | assistant_message="$(cat <<EOF | 347 | assistant_message="$(cat <<EOF |
349 | {"role": "assistant", "content": $(jq -sr '.[-1].choices[0].message.content' "$cache" | jq -sR .)} | 348 | { |
349 | "role": "assistant", | ||
350 | "content": $(jq -sr '.[-1].choices[0].message.content' "$cache" | jq -sR .) | ||
351 | } | ||
350 | EOF | 352 | EOF |
351 | )" | 353 | )" |
352 | session+=("$assistant_message") | 354 | session+=("$assistant_message") |
353 | 355 | ||
354 | (( round+=1 )) | ||
355 | done | 356 | done |