import sys, re from pathlib import Path from os import path sys.path.append(str(Path(__file__).parent.parent.parent)) import g4f def read_code(text): if match := re.search(r"```(python|py|)\n(?P[\S\s]+?)\n```", text): return match.group("code") path = input("Path: ") with open(path, "r") as file: code = file.read() prompt = f""" Improve the code in this file: ```py {code} ``` Don't remove anything. Add typehints if possible. Don't add any typehints to kwargs. Don't remove license comments. """ print("Create code...") response = [] for chunk in g4f.ChatCompletion.create( model=g4f.models.default, messages=[{"role": "user", "content": prompt}], timeout=300, stream=True ): response.append(chunk) print(chunk, end="", flush=True) print() response = "".join(response) if code := read_code(response): with open(path, "w") as file: file.write(code)