Spaces:
Runtime error
Runtime error
File size: 2,721 Bytes
c1f3831 808bf67 c1f3831 808bf67 c1f3831 63de821 c1f3831 808bf67 c1f3831 63de821 db88ae6 bca1508 db88ae6 808bf67 db88ae6 808bf67 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 |
import json
import requests
# BASE_URL = "https://caffeinecrew-techdocs.hf.space"
BASE_URL = "http://127.0.0.1:8000"
def get_access_token(data, return_refresh_token=False):
try:
url = BASE_URL + "/auth/login"
headers = {
"accept": "application/json",
}
data = json.dumps(data)
response = requests.post(url, data=data, headers=headers)
access_token = response.json()['access_token']
if return_refresh_token:
refresh_token = response.json()['refresh_token']
return access_token, refresh_token
return access_token
except Exception as e:
print("Invlaid Credentials")
return None
def request_inference(config, code_block, max_retries=1):
if max_retries == 0:
return None
url = BASE_URL+"/api/inference"
headers={"accept":"application/json", "Authorization": f"Bearer {config['access_token']}"}
code_input = code_block
response = requests.post(url=url, headers=headers, data=json.dumps({'code_block':code_input, 'api_key':config['api_key']}))
if response.status_code == 200:
return response.json()["docstr"]
else:
data = {
"username":config['username'],
"password":config['password']
}
print("Encountered error retrying...")
config.update({"access_token":get_access_token(data)})
return request_inference(config, code_block, max_retries=max_retries-1)
def update_file(file_path, docstr_code):
with open(file_path, "w",errors='ignore') as file:
file.write(docstr_code)
def issue_api_key(config):
try:
headers={"accept":"application/json", "Authorization": f"Bearer {config['access_token']}"}
response = requests.put(url=BASE_URL + "/auth/regenerate_api_key", headers=headers,
data=json.dumps({"username": config['username']})
)
if (response.status_code!=200):
raise Exception("API Key Generation Failed")
print(f"$ API_KEY: {response.json()['api_key']}")
except Exception as e:
print(f"$ {e}")
def signup(config):
try:
headers={"accept":"application/json"}
response = requests.post(url=BASE_URL + "/auth/signup", headers=headers, data=json.dumps(config))
if (response.status_code==226):
raise Exception("username or email already exists")
elif (response.status_code!=200):
raise Exception("Something went wrong, please try again later")
print("Signed up successfully, please issue a new `API_KEY` to continue")
except Exception as e:
print(e)
|