Skip to content

Latest commit

 

History

History
291 lines (220 loc) · 24 KB

README_RS.md

File metadata and controls

291 lines (220 loc) · 24 KB

Note

Этот файл самовыражения автоматически генерируется модулем перевода markdown в этом проекте и может быть не на 100% правильным.

ChatGPT Academic Optimization

**Если вам понравился этот проект, пожалуйста, поставьте ему звезду. Если вы придумали более полезные академические ярлыки или функциональные плагины, не стесняйтесь создавать запросы на изменение или пул-запросы. Мы также имеем README на английском языке, переведенный этим же проектом.

Примечание

  1. Пожалуйста, обратите внимание, что только функциonal plugins (buttons) с красным цветом могут читать файлы, некоторые из которых находятся в выпадающем меню плагинов. Кроме того, мы приветствуем и обрабатываем любые новые плагины с наивысшим приоритетом!

  2. Функции каждого файла в этом проекте подробно описаны в собственном анализе self_analysis.md . При повторных итерациях вы также можете вызывать обновленный отчет функций проекта, щелкнув соответствующий функциональный плагин GPT. Часто задаваемые вопросы собраны в wiki .

Функция Описание
Редактирование одним кликом Поддержка редактирования одним кликом, поиск грамматических ошибок в академических статьях
Переключение языков "Английский-Китайский" одним кликом Одним кликом переключайте языки "Английский-Китайский"
Разъяснение программного кода одним кликом Вы можете правильно отобразить и объяснить программный код.
Настраиваемые сочетания клавиш Поддержка настраиваемых сочетаний клавиш
Настройка сервера-прокси Поддержка настройки сервера-прокси
Модульный дизайн Поддержка настраиваемых функциональных плагинов высших порядков и функциональных плагинов, поддерживающих горячее обновление
Автоанализ программы [Функциональный плагин] Прочтение в один клик кода программы проекта
Анализ программы [Функциональный плагин] Один клик для проанализирования дерева других проектов Python/C/C++/Java/Lua/...
Чтение статей [Функциональный плагин] Одним кликом прочитайте весь латех (LaTex) текст статьи и сгенерируйте краткое описание
Перевод и редактирование всех статей из LaTex [Функциональный плагин] Перевод или редактирование LaTex-статьи всего одним нажатием кнопки
Генерация комментариев в пакетном режиме [Функциональный плагин] Одним кликом сгенерируйте комментарии к функциям в пакетном режиме
Генерация отчетов пакета CHAT [Функциональный плагин] Автоматически создавайте сводные отчеты после выполнения
Помощник по arxiv [Функциональный плагин] Введите URL статьи arxiv, чтобы легко перевести резюме и загрузить PDF-файл
Перевод полного текста статьи в формате PDF [Функциональный плагин] Извлеките заголовок статьи, резюме и переведите весь текст статьи (многопоточно)
Помощник интеграции Google Scholar [Функциональный плагин] Дайте GPT выбрать для вас интересные статьи на любой странице поиска Google Scholar.
Отображение формул/изображений/таблиц Одновременно отображается tex-форма и рендер-форма формул, поддержка формул, высокоскоростных кодов
Поддержка функциональных плагинов многопоточности Поддержка многопоточной работы с плагинами, обрабатывайте огромные объемы текста или программы одним кликом
Запуск темной темы gradioподробнее Добавьте / ?__dark-theme=true в конец URL браузера, чтобы переключиться на темную тему.
Поддержка нескольких моделей LLM, поддержка API2D Находиться между GPT3.5, GPT4 и 清华ChatGLM должно быть очень приятно, не так ли?
Альтернатива huggingface без использования научной сети Онлайн-эксперимент Войдите в систему, скопируйте пространство этот пространственный URL
…… ……
  • Новый интерфейс (вы можете изменить настройку LAYOUT в config.py, чтобы переключаться между "горизонтальным расположением" и "вертикальным расположением")

Вы профессиональный переводчик научных статей.

  • Все кнопки генерируются динамически путем чтения functional.py и могут быть легко настроены под пользовательские потребности, освобождая буфер обмена.
  • Редактирование/корректирование
  • Если вывод содержит формулы, они отображаются одновременно как в формате tex, так и в рендеринговом формате для удобства копирования и чтения.
  • Лень смотреть код проекта? Просто покажите chatgpt.
  • Несколько моделей больших языковых моделей смешиваются (ChatGLM + OpenAI-GPT3.5 + [API2D] (https://api2d.com/) -GPT4)

Несколько моделей больших языковых моделей смешиваются в [бета-версии huggingface] (https://huggingface.co/spaces/qingxu98/academic-chatgpt-beta) (huggingface-версия не поддерживает chatglm).


Установка - Метод 1: Запуск (Windows, Linux или MacOS)

  1. Скачайте проект
git clone https://github.com/binary-husky/chatgpt_academic.git
cd chatgpt_academic
  1. Настройка API_KEY и настройки прокси

В файле config.py настройте зарубежный прокси и OpenAI API KEY, пояснения ниже

1. Если вы находитесь в Китае, вам нужно настроить зарубежный прокси, чтобы использовать OpenAI API. Пожалуйста, внимательно прочитайте config.py для получения инструкций (1. Измените USE_PROXY на True; 2. Измените прокси в соответствии с инструкциями).
2. Настройка API KEY OpenAI. Вам необходимо зарегистрироваться на сайте OpenAI и получить API KEY. После получения API KEY настройте его в файле config.py.
3. Вопросы, связанные с сетевыми проблемами (тайм-аут сети, прокси не работает), можно найти здесь: https://github.com/binary-husky/chatgpt_academic/issues/1

(Примечание: при запуске программы будет проверяться наличие конфиденциального файла конфигурации с именем config_private.py и использоваться в нем конфигурация параметров, которая перезаписывает параметры с такими же именами в config.py. Поэтому, если вы понимаете логику чтения нашей конфигурации, мы настоятельно рекомендуем вам создать новый файл конфигурации с именем config_private.py рядом с config.py и переместить (скопировать) настройки из config.py в config_private.py. config_private.py не подвергается контролю git, что делает конфиденциальную информацию более безопасной.)

  1. Установить зависимости
# (Выбор 1) Рекомендуется
python -m pip install -r requirements.txt   

# (Выбор 2) Если вы используете anaconda, то шаги будут аналогичны:
# (Шаг 2.1) conda create -n gptac_venv python=3.11
# (Шаг 2.2) conda activate gptac_venv
# (Шаг 2.3) python -m pip install -r requirements.txt

# Примечание: используйте официальный источник pip или источник pip.aliyun.com. Другие источники pip могут вызывать проблемы. временный метод замены источника: 
# python -m pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/

Если требуется поддержка TUNA ChatGLM, необходимо установить дополнительные зависимости (если вы неудобны с python, необходимо иметь хорошую конфигурацию компьютера):

python -m pip install -r request_llm/requirements_chatglm.txt
  1. Запустите
python main.py
  1. Тестовые функции плагина
- Тестирвоание анализа проекта Python
    В основной области введите `./crazy_functions/test_project/python/dqn` , а затем нажмите "Анализировать весь проект Python"
- Тестирование самостоятельного чтения кода
    Щелкните " [Демонстрационный режим многопоточности] Проанализируйте сам проект (расшифровка источника кода)"
- Тестирование функций шаблонного плагина (вы можете использовать эту функцию как шаблон для более сложных функций, требующих ответа от gpt в связи с тем, что произошло сегодня в истории)
    Щелкните " [Функции шаблонного плагина] День в истории"
- На нижней панели дополнительные функции для выбора

Установка - Метод 2: Использование docker (Linux)

  1. Только ChatGPT (рекомендуется для большинства пользователей):
# Скачать проект
git clone https://github.com/binary-husky/chatgpt_academic.git
cd chatgpt_academic
# Настроить прокси за границей и OpenAI API KEY
Отредактируйте файл config.py в любом текстовом редакторе.
# Установка
docker build -t gpt-academic .
# Запустить
docker run --rm -it --net=host gpt-academic

# Проверка функциональности плагина
## Проверка шаблонной функции плагина (требуется, чтобы gpt ответил, что произошло "в истории на этот день"), вы можете использовать эту функцию в качестве шаблона для реализации более сложных функций.
Нажмите "[Шаблонный демонстрационный плагин] История на этот день".
## Тест абстрактного резюме для проекта на Latex
В области ввода введите ./crazy_functions/test_project/latex/attention, а затем нажмите "Чтение реферата о тезисах статьи на LaTeX".
## Тестовый анализ проекта на Python
Введите в область ввода ./crazy_functions/test_project/python/dqn, затем нажмите "Проанализировать весь проект на Python".

Выбирайте больше функциональных плагинов в нижнем выпадающем меню.
  1. ChatGPT + ChatGLM (требуется глубокое знание Docker и достаточно мощное компьютерное оборудование):
# Изменение Dockerfile
cd docs && nano Dockerfile+ChatGLM
# Как построить | Как запустить (Dockerfile+ChatGLM в пути docs, сначала перейдите в папку с помощью cd docs)
docker build -t gpt-academic --network=host -f Dockerfile+ChatGLM .
# Как запустить | Как запустить (2) я хочу войти в контейнер и сделать какие-то настройки до запуска:
docker run --rm -it --net=host --gpus=all gpt-academic bash

Установка-Метод 3: Другие способы развертывания

  1. Развертывание на удаленном облачном сервере Пожалуйста, посетите [Deploy Wiki-1] (https://github.com/binary-husky/chatgpt_academic/wiki/%E4%BA%91%E6%9C%8D%E5%8A%A1%E5%99%A8%E8%BF%9C%E7%A8%8B%E9%83%A8%E7%BD%B2%E6%8C%87%E5%8D%97)

  2. Использование WSL2 (Windows Subsystem for Linux) Пожалуйста, посетите [Deploy Wiki-2] (https://github.com/binary-husky/chatgpt_academic/wiki/%E4%BD%BF%E7%94%A8WSL2%EF%BC%88Windows-Subsystem-for-Linux-%E5%AD%90%E7%B3%BB%E7%BB%9F%EF%BC%89%E9%83%A8%E7%BD%B2)

Установка-Настройки прокси

Метод 1: Обычный способ

[Конфигурация прокси] (binary-husky#1)

Метод 2: Руководство новичка

[Руководство новичка] (https://github.com/binary-husky/chatgpt_academic/wiki/%E4%BB%A3%E7%90%86%E8%BD%AF%E4%BB%B6%E9%97%AE%E9%A2%98%E7%9A%84%E6%96%B0%E6%89%8B%E8%A7%A3%E5%86%B3%E6%96%B9%E6%B3%95%EF%BC%88%E6%96%B9%E6%B3%95%E5%8F%AA%E9%80%82%E7%94%A8%E4%BA%8E%E6%96%B0%E6%89%8B%EF%BC%89)


Настройка новой удобной кнопки (настройка быстрой клавиши для научной работы)

Откройте core_functional.py любым текстовым редактором, добавьте элементы, как показано ниже, затем перезапустите программу. (Если кнопка уже успешно добавлена и видна, то префикс и суффикс поддерживают горячее изменение, чтобы они оказались в действии, не нужно перезапускать программу.) например

"Супер анг-рус": {
    # Префикс, будет добавлен перед вашим вводом. Например, используется для описания ваших потребностей, таких как перевод, кодинг, редактирование и т. д.
    "Prefix": "Пожалуйста, переведите этот фрагмент на русский язык, а затем создайте пошаговую таблицу в markdown, чтобы объяснить все специализированные термины, которые встречаются в тексте:\n\n", 
    
    # Суффикс, будет добавлен после вашего ввода. Например, совместно с префиксом можно обрамить ваш ввод в кавычки.
    "Suffix": "",
},

Демонстрация некоторых возможностей

Отображение изображений:

Если программа может понимать и разбирать сама себя:

Анализ других проектов на Python/Cpp:

Генерация понимания и абстрактов с помощью Латех статей в один клик

Автоматическое создание отчетов

Модульный дизайн функций

Трансляция исходного кода на английский язык

Todo и планирование версий:

  • version 3.2+ (todo): функция плагины поддерживают более многочисленные интерфейсы параметров
  • version 3.1: поддержка одновременного опроса нескольких моделей gpt! Поддержка api2d, поддержка балансировки нагрузки множества apikey.
  • version 3.0: поддержка chatglm и других маленьких llm
  • version 2.6: реструктурировал структуру плагинов, повысил интерактивность, добавил больше плагинов
  • version 2.5: само обновление, решение проблемы слишком длинного текста и переполнения токена при переводе всего проекта исходного кода
  • version 2.4: (1) добавлена функция перевода всего PDF-документа; (2) добавлена функция изменения положения входной области; (3) добавлена опция вертикального макета; (4) оптимизация функций многопоточности плагина.
  • version 2.3: улучшение многопоточной интерактивности
  • version 2.2: функция плагинов поддерживает горячую перезагрузку
  • version 2.1: блочная раскладка
  • version 2.0: модульный дизайн функций плагина
  • version 1.0: основные функции

Ссылки на изучение и обучение

В коде использовано много хороших дизайнерских решений из других отличных проектов, в том числе:

# Project1: использование многих приемов из ChuanhuChatGPT
https://github.com/GaiZhenbiao/ChuanhuChatGPT

# Project2: ChatGLM-6B в Тхуде:
https://github.com/THUDM/ChatGLM-6B