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
|
||||
|
||||
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.
|
||||
Might as well make your coding super efficient in the mean time.
|
||||
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.
|
||||
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