Автоматически документируйте код, передавая его в LLM (Chat-GPT).
С помощью простой подсказки мы просим LLM аннотировать данный код, следуя соглашениям для этого языка.
NOTE
. Этот инструмент по-прежнему требует ручного контроля: при выводе обратно в то же место проверьте результаты перед внесением изменений. По умолчанию инструмент выводит данные на стандартный вывод ИЛИ в новый каталог.
инструкции по настройке см. в разделе Setup
ниже.
Примечание: сценарии необходимо запускать из папки верхнего уровня via-chat-gpt
.
Чтобы прокомментировать один файл:
pipenv run python via-chat-gpt [--out-dir
Чтобы комментировать файлы в каталоге (НЕ рекурсивно):
pipenv run python via-chat-gpt [--out-dir
примечание: чтобы выполнить обратную запись в тот же файл(ы), просто укажите --out-dir
чтобы указать на тот же каталог. Но тогда, пожалуйста, проверьте результат перед внесением изменений.
Пример созданной документации (опубликованной через pdoc на S3): документация по кукурузной змее.
import json
def read_from_json_file(path_to_json, encoding='utf-8'):
with open(path_to_json, encoding=encoding) as f:
data = json.load(f)
return data
def write_to_json_file(dict, file_path, encoding='utf-8', indent=2):
json_object = json.dumps(dict, indent=indent)
with open(file_path, "w", encoding=encoding) as outfile:
outfile.write(json_object)
"""
This Python file contains functions for reading from and writing to a JSON file. The `read_from_json_file` function reads JSON data from a file, and the `write_to_json_file` function writes JSON data to a file.
"""
import json
def read_from_json_file(path_to_json, encoding='utf-8'):
"""
Function to read JSON data from a file.
Args:
path_to_json (str): The path to the JSON file.
encoding (str): The encoding of the file. Default is 'utf-8'.
Returns:
dict: The JSON data read from the file.
"""
with open(path_to_json, encoding=encoding) as f:
data = json.load(f) # Load JSON data from the file
return data
def write_to_json_file(dict, file_path, encoding='utf-8', indent=2):
"""
Function to write JSON data to a file.
Args:
dict (dict): The dictionary containing JSON data to be written.
file_path (str): The path to the output JSON file.
encoding (str): The encoding of the file. Default is 'utf-8'.
indent (int): The number of spaces to indent the JSON data. Default is 2.
"""
json_object = json.dumps(dict, indent=indent) # Convert dictionary to JSON string with specified indent
with open(file_path, "w", encoding=encoding) as outfile:
outfile.write(json_object) # Write JSON data to the file
cd via-chat-gpt
Юникс:
pip install pipenv
export PYTHONPATH= " ${PYTHONPATH} :. "
pipenv install
Окна:
pip install pipenv
set PYTHONPATH= " %PYTHONPATH% " ; .
pipenv install
Установите переменную среды с помощью ключа OpenAI:
export OPENAI_API_KEY= " xxx "
Добавьте это в сценарий инициализации оболочки ( ~/.zprofile
или аналогичный)
Загрузка в текущий терминал:
source ~ /.zprofile
(компакт-диск через чат-gpt)
test-openai.sh
или
pipenv run python via-chat-gpt ../test-resources/util_json.py
Результаты только хорошие (у Chat-GPT результаты намного лучше)
см. README via-phi2-the-bloke
TODO исправить обработку ответов для этой версии
см. README via-phi2