Gish는 UNIX 규칙에 따라 OpenAi GPT와 상호 작용하고 플래그를 통해 풍부한 기능 세트를 제공하는 명령 줄 인터페이스 (CLI)입니다. Gish를 사용하려면 유료 OpenAI 계정 및 API 키가 필요하다는 점에 유의해야합니다.
Gish는 다음과 같은 기능을 제공합니다.
#import
문을 사용하여 파일을 프롬프트에 통합합니다#diff
문 또는 -d
플래그를 사용하여 원본으로 diff -ing 생성 파일 npx gish-gpt
또는
npm install gish-gpt
node_modules/.bin/gish
대안, 3 단계를 NPM Dev로 바꾸어 코드를 변경합니다.
dist/index.js
실행하십시오dist/index.js
에 대한 상징적 링크를 만듭니다. 또는 별명을 만듭니다. # gish tell me a joke
Why was the math book sad? Because it had too many problems.
# gish "What is the population of the city of London?".
The population of the City of London is approximately9 million, as of 2021.
따옴표가 없으면 쉘은 두 번째 요청에서 물음표를 해석하고 오류를 유발합니다.
파이프 입력 :
#echo "What is the population of the city of London?" | gish
The estimated population of the city of London is around 9 million people.
# gish.
> tell me a joke
Why did the tomato turn red? Because it saw the salad dressing!
이것은 명령 줄에서 "Python"또는 "Node"를 입력하는 것과 유사합니다.
gist < foo
Foo의 내용이있는 곳
tell me a joke
gish --help
모든 다른 옵션을 보여줍니다gish tell me a joke
gish "what is the population of San Francisco?".
쉘 오류를 피하려면 따옴표가 필요합니다.gish -e
편집자에 넣고 완료되면 콘텐츠를 보냅니다. 파일을 만들거나 비워 두지 마십시오.gish -e foo.txt
동일하지만 기존 파일에서 작동합니다.gish -h [num]
당신에게 역사를 보여줍니다. NUM은 선택 사항이며 기본값은 20입니다.gish -i foo
foo의 내용을 보냅니다. cat foo | gish
와 동일합니다 cat foo | gish
.gish -m gpt-4
모델을 지정합니다gish -p foo
채팅에서 Foo를 프롬프트로 사용합니다. 다른 플래그 나 인수는 실제 요청을 통과하는 데 사용되지만 이것이 배경입니다. https://platform.openai.com/docs/guides/chat을 참조하십시오. Gish는이 프롬프트를 "System"의 역할과의 채팅에서 첫 번째로 설정합니다.gish -s foo.ts
출력을 foo.ts에 저장합니다. 코드를 생성 할 때 사용자는 적절한 출력을 생성하는 프롬프트를 사용해야합니다. 예를 들어 프롬프트/코딩을 참조하십시오.gish -d foo.ts
이 파일과 결과를 다룹니다. 필요 -S.gish -c [num]
채팅 모드를 활성화하고 NUM 요청을 나타내며, 기본값은 이전 요청으로 기본값을 나타냅니다. 자세한 내용은 채팅 섹션을 참조하십시오.gish -g
전체 응용 프로그램을 생성하기 위해 여러 파일을 생성합니다. 자세한 내용은 생성 섹션을 참조하십시오.gish -x
추가 논쟁을 GPT에 전달합니다. 예 : -x ' "온도"= 0.5 : "max_tokens"= 500'. 당신의 쉘에서와 같이 -h 또는 -역사는 당신의 요청의 기록을 보여줍니다. 선택적 Num Param은 요소 수를 지정합니다. 기본값은 20입니다.
채팅 모드는 이전 요청을 참조 할 수있는 https://platform.openai.com/chat과 비슷한 경험을 제공합니다.
# gish what is the capital of japan
The capital of Japan is Tokyo.
# gish -c population
The estimated population of Tokyo, Japan as of2021 is approximately 13.9 million people.
히스토리 기능을 사용하여 역사상 요청 위치를보고 -C 매개 변수로 전달할 수 있습니다.
# gish tell me a joke
Why did the tomato turn red ? Because it saw the salad dressing !
# gish tell me a one line story
She found love in the most unexpected place.
# gish -h 2
892: tell me a joke
893: tell me a one line story
# gish -c 892 another
Why did the bicycle fall over ? Because it was two-tired !
사용할 수있는 깃발 목록은 [chat api docs] (https://platform.openai.com/docs/api-reference/chat)를 참조하십시오. 이 기능은 고급 사용자를위한 것이지만 API는 일반적으로 지원되지 않는 플래그를 전달하면 오류가 발생합니다.
경고 전달한 문자열은 유효한 json이어야 합니다 . 구체적으로 모든 문자열이 ':'의 양쪽에 이중 인용문으로 둘러싸여 있는지 확인하십시오. 이것은 JAVASCRIP가 아닌 JSON입니다! 예:
# gish -x '"temperature":0.5,"max_tokens":5' tell me a joke
Why did the tomato turn
5 개의 토큰 후 응답을 자릅니다.
chat
및 채팅 모드에 입력하려는 요청을 입력하십시오. 출구를 입력하여 채팅 모드를 떠나십시오. 역사를 선택한 숫자로 히스토리를 입력하십시오. 기본값은 20입니다.
채팅 모드는 이전 요청을 참조 할 수있는 https://platform.openai.com/chat과 비슷한 경험을 제공합니다.
> 10 miles to km
16.0934 km.
> chat how about 40
40 miles is equal to64.3736 kilometers.
Chat > how about 50
50 miles is equal to80.4672 kilometers.
Chat > exit
> how about 30
30 is a positive integer that comes after29 and before 31.
chat 876 another
입력 파일의 #import
문을 사용하여 chatgpt에 반응하려는 프롬프트 또는 주석/텍스트를 포함하십시오. 예
#import ~/work/gish/tasks/coding.txt
The above program prints hello world. Change it to print goodbye world.
#import hello.ts
다음은 tasks/coding.txt
의 내용입니다.
I want you to act as a coding collaborator. I will ask you software questions and you will answer with code.
Your response for this request needs to be code and nothing else.
Only provide comments if they provide important extra information and they should be brief and to the point. The contents should be in the code as comments at the top of the file.
---
코딩에 Gish를 사용할 때 일반적인 워크 플로입니다.
gpt가 파일을 변경하고 파일을 변경하려면 #diff
옵션을 사용하십시오.
#import ~/work/gish/tasks/coding.txt
In the following file, document the code better
#diff settings.ts
이 프로세스는 #import
와 유사하지만 앱에 사용자가 파일을 수정하고 있음을 알 수 있습니다. 코드가 생성되면 settings.ts
에 정의 된 diff 명령이 원본 및 생성 된 파일에서 시작됩니다. 복잡한 변화의 경우 Copilot이 더 잘 작동 할 수 있습니다.
[Web Application] (tasks/webapp.txt)와 같은 적절한 프롬프트를 사용하면 LLM을 얻을 수 있지만 GPT-4를 권장하지만 실험하고 귀하에게 적합한 것을 확인하십시오. 입력 파일을 만듭니다
#import tasks/webapp.txt
Generate Conway's game of life.
Include on the page, the instructions on how to play the game.
그리고 달리기
gish -m gpt-4 -g life -i /input
"생명"디렉토리에서 삶의 게임이 생겼습니다.
경고
이 접근법을 사용하면 특히 GPT-4와 함께 많은 토큰을 사용하기 쉽기 때문에 비용이 추가 될 수 있습니다.
Gish를 사용하는 방법은 [예제] (예제) DIR을 참조하십시오.
다음은 GISH를 사용하여 GIT 커밋 메시지를 생성하고 편집기에서 사용자를 미리 인과하는 쉘 스크립트 예제입니다.
#! /bin/bash
out= " The following is the output of git diff "
out+= ` git diff $* `
out+= " ----------------------------- "
out+= " The following is the output of git status "
out+= ` git status --untracked-files=no $* `
out+= " ----------------------------- "
out+= " based on the above provide a commit message "
git commit -e -m " ` echo $out | gish --no-stats ` " $*
로그 파일 ~/.gish/history.json은 chatgpt와의 대화 로그로 동작합니다. 표준 파일이므로 편집기 또는 호출기를 사용하여 다음과 같은 ChatGpt와의 상호 작용의 역사를 살펴볼 수 있습니다.
Cat 및 Echo와 같은 Linux 명령과 유사하게, 다음은 Gish가 논쟁과 깃발을 우선 순위로 삼는 방법입니다.
기본적으로 Gish는 귀하의 요청에 대한 통계를 보여줍니다.
gish tell me a joke --no-stream
Why don't scientists trust atoms?
Because they make up everything.
Tokens: 26 Cost: $0.00005 Elapsed: 1.198 Seconds
비용은 1000 개의 토큰 당 $ 0.02로 GPT3.5를 사용하고 있다는 가정을 기반으로합니다. *의존하기 전에 숫자를 다시 확인하십시오. 스트리밍을 사용할 때 API는 토큰 수를 제공하지 않으므로 자체적으로이를 계산해야합니다.