Spaces:
Sleeping
Sleeping
| from functools import cache | |
| import requests | |
| import os | |
| from typing import Any | |
| from pgsoft.pgdate.date_utils import beijing | |
| import json | |
| def post_to_pgai_helper(command: str) -> Any: | |
| myobj = { | |
| "code": os.getenv("pgai_code"), | |
| "command": command, | |
| } | |
| header = {'accept': 'application/json', 'Content-Type': 'application/json'} | |
| url_base = "https://steveagi-pgai.hf.space/games/watermelon/nlp" | |
| url_read = f"{url_base}/r" | |
| try: | |
| res = requests.post(url_read, headers=header, json=myobj) | |
| if res.status_code == 200: | |
| print(res.text) | |
| return res.text | |
| else: | |
| print(res.text) | |
| return None | |
| except Exception as e: | |
| print(e) | |
| return None | |
| from_cache = True | |
| # @cache | |
| def call_pgai(service, game, functionality, nlp_command, url, hf_token): | |
| calling_start = beijing() | |
| print(f"calling ai starts at {calling_start}") | |
| try: | |
| res = post_to_pgai_helper(nlp_command) | |
| except Exception as e: | |
| return ( | |
| f"{type(e)}, {str(e)}. \nyou may want to make " | |
| + "sure your hf_token is correct" | |
| ) | |
| calling_end = beijing() | |
| timecost = calling_end.timestamp() - calling_start.timestamp() | |
| print(f"calling ai ends at {calling_end}, costs {timecost:.2f}s") | |
| global from_cache | |
| from_cache = False | |
| if res is not None: | |
| outp = json.loads(res) | |
| return outp | |
| else: | |
| return None | |