Added autokey setup, updated readme
This commit is contained in:
parent
f254fcf1cc
commit
43ce8f1541
23
README.md
23
README.md
@ -1,5 +1,22 @@
|
|||||||
# ChatGPTAutocomplete
|
# ChatGPTAutocomplete
|
||||||
|
|
||||||
Scripts and tools to make chat gpt write code for you.
|
Scripts and tools to make chat gpt write code for you.
|
||||||
Lets all be honest here, this is just the beginning of the end for software engineers.
|
Lets all be honest here, this is just the beginning of the end for software engineers.
|
||||||
Might as well make your coding super efficient in the mean time.
|
Might as well make your coding super efficient in the mean time.
|
||||||
|
|
||||||
|
### How to run
|
||||||
|
First Setup your API keys with OpenAI
|
||||||
|
|
||||||
|
### Autohotkey Setup - Windows
|
||||||
|
* Install AutoHotKey
|
||||||
|
* Download the AutoHotKey directory
|
||||||
|
* Add your secret API key to the script and save
|
||||||
|
* Double Click the .ahk file to run it
|
||||||
|
* Type in what you want chat GPT to generate in a text editor or VS code
|
||||||
|
* Press ~ to run script
|
||||||
|
|
||||||
|
### Autokey Setup - Linux
|
||||||
|
* Install Autokey
|
||||||
|
* Copy the contents of the Autokey directory to your local autokey config folder (or just create a new script and then paste in the contents)
|
||||||
|
* Assign a "hotkey"
|
||||||
|
* Press your hotkey to run the script, script output will be pasted into whatever is open
|
||||||
|
50
autohotkey/GptAutocomplete.py
Normal file
50
autohotkey/GptAutocomplete.py
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
# importing the requests library
|
||||||
|
import requests
|
||||||
|
import json
|
||||||
|
|
||||||
|
retCode, userPrompt = dialog.input_dialog('Gpt Snippet','Enter a prompt')
|
||||||
|
# exit if no input or user hits cancel
|
||||||
|
if userPrompt == '' or retCode == 1:
|
||||||
|
exit(0)
|
||||||
|
|
||||||
|
# use prompt as comment
|
||||||
|
cleanOutput = "// " + userPrompt + "\n"
|
||||||
|
|
||||||
|
# post to openai
|
||||||
|
API_Key = "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"
|
||||||
|
URL = "https://api.openai.com/v1/chat/completions"
|
||||||
|
prompt = 'Use the following input to create a code snippet. Only output ES6 Javascript no additional details or explanations, only code. No other output, only JS code. Create a clear, concise output with readable camel case variable names. Make sure the code is clear, understandable and maintainable. If its necessary use existing variable names with the output. Use 4 spaces per tab. The input is:'
|
||||||
|
|
||||||
|
HEADERS = {
|
||||||
|
"Content-Type": "application/json",
|
||||||
|
"Authorization": "Bearer "+API_Key
|
||||||
|
}
|
||||||
|
|
||||||
|
PARAMS = {
|
||||||
|
"model": "gpt-4",
|
||||||
|
"messages": [
|
||||||
|
{
|
||||||
|
"role": "user",
|
||||||
|
"content": prompt + userPrompt
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
response = requests.post(URL, data = json.dumps(PARAMS), headers = HEADERS)
|
||||||
|
data = response.json()
|
||||||
|
|
||||||
|
# Clean up chat GPT response
|
||||||
|
gptResponse = str(data['choices'][0]['message']['content'])
|
||||||
|
gptResponse = gptResponse.replace("```Javascript","")
|
||||||
|
gptResponse = gptResponse.replace("```javascript","")
|
||||||
|
gptResponse = gptResponse.replace("```","")
|
||||||
|
cleanOutput += gptResponse.strip()
|
||||||
|
#cleanOutput = cleanOutput.replace(" ","\t")
|
||||||
|
|
||||||
|
exitCode, userInput = dialog.info_dialog('Gpt Snippet Review',"Generated: \n\n" + cleanOutput + "\n\npress ESC to cancel")
|
||||||
|
|
||||||
|
# Dont paste output if user hit escape
|
||||||
|
if exitCode == 0:
|
||||||
|
keyboard.send_keys(cleanOutput)
|
||||||
|
|
||||||
|
|
Before Width: | Height: | Size: 112 KiB After Width: | Height: | Size: 112 KiB |
Loading…
Reference in New Issue
Block a user