Оглавление
Обзор
Функции
Структура репозитория
Модули
Начиная
Установка
Запуск Report.ai
Быстрый старт
Дорожная карта
Содействие
Лицензия
Благодарности
Наша миссия Report.ai ясна: предоставить вам надежные возможности создания отчетов на основе искусственного интеллекта. Мы вышли за пределы ограничений традиционной сегментации текста на основе длины, выбрав более разумный подход — семантическую сегментацию. Этот инновационный метод обеспечивает беспрецедентную точность определения как общих тем, так и тонких деталей вашего контента. Более того, мы делаем все возможное, предлагая расшифровку и аудио в каждом сегменте, предоставляя вам надежный ориентир для всестороннего понимания вашего контента.
Вместо того, чтобы полагаться на длину текста, Report.ai сегментирует ваши отчеты по их значению. Это приводит к более точной разбивке содержания, улучшая ваше понимание материала.
Наши отчеты выходят за рамки простого текстового представления. Каждый семантический фрагмент представлен вместе с интерактивной расшифровкой, что позволяет вам легко перемещаться и ссылаться на исходные аудиосегменты.
Мы даем возможность настройки в ваши руки. С легкостью адаптируйте свой анализ, используя наши настраиваемые шаблоны, которые позволят вам извлечь важную для вас информацию.
Работаете ли вы со ссылками на YouTube, аудиофайлами в формате WAV или текстовыми расшифровками в формате TXT, мы предоставим вам все необходимое. Report.ai легко обрабатывает различные мультимедийные данные, делая ваш опыт комплексным и удобным.
Для тех, кто хочет создать профессиональную базу данных, наш репозиторий обеспечивает полную интеграцию с Pinecone и Chroma. Эти передовые инструменты предлагают превосходные возможности управления и поиска данных, повышая ценность ваших усилий по составлению отчетов.
└── readme/ ├── .env ├── VAD.py ├── div.py ├── пример/ │ ├── WATCH_LIVE_Nvidia_Q2_Earnings_Call_NVDA │ └── пакетный файл.txt ├── main.py ├── требования.txt ├── s2t_whisper.py ├── Storage_vector.py ├── sum.py ├── шаблон/ │ ├── общий.txt │ └── individuel.txt └── utils.py
Файл | Краткое содержание |
---|---|
требования.txt | Предоставление списка основных зависимостей, имеющих решающее значение для правильного функционирования кода. |
.env | Файл .env служит хранилищем параметров конфигурации, относящихся к различным API, включая API OpenAI, Azure OpenAI и Pinecone. В этом файле вы найдете важную информацию, такую как ключи API, названия моделей и конфигурации хранилища. |
utils.py | В файле utils.py вы найдете обширный набор служебных функций. Эти функции универсальны и охватывают различные важные задачи, в том числе: fuzzy_match: для выполнения нечеткого сопоставления строк. validate_filetype: обеспечение проверки типа файла. обнаружить_язык: определение языка текстового файла. get_items: Извлечение элементов из файлов шаблонов. add_hyperlink: добавление гиперссылок в документы Word. разделить_аудио: нарезка аудиофайлов на сегменты. get_file_list: Получение списков путей к файлам. |
sum.py | Сценарий summarize.py предназначен для создания сводок на основе шаблонов, найденных в файлах template/general.txt и template/individual.txt. При необходимости эти сводки можно перевести, а затем преобразовать в формат документа Microsoft Word (.docx). В ходе этого процесса документ пополняется гиперссылками и дополнительными контекстными деталями. |
s2t_whisper.py | s2t_whisper.py предоставляет функции для загрузки видео с YouTube, извлечения аудио, удаления тишины, преобразования речи в текст с отметкой времени и добавления знаков препинания для китайского контента. Полученная расшифровка сохраняется в формате JSON и TXT. |
ВАД.py | VAD.py используется для извлечения человеческого голоса из аудиофайла. Он разбивает звук на куски по 10 минут, экспортирует каждый фрагмент как отдельный файл и извлекает человеческий голос с помощью библиотеки Spleeter. Извлеченный вокал затем объединяется в один аудиофайл. |
разделить.py | divide.py предназначен для разделения статьи на подтемы на основе ее расшифровки. Класс имеет несколько частных методов: _string_cleaner очищает входную строку, _get_timestamp_list извлекает временные метки из файла JSON, _add_timestamp добавляет временные метки к подтемам, _add_transcript добавляет расшифровку в подтемы, а _divide_by_subtopics использует языковые модели для разделения статьи на фрагменты. |
main.py | main.py — это универсальный скрипт, предназначенный для анализа файлов и создания сводных данных. Он обеспечивает большую гибкость, принимая различные аргументы командной строки, в том числе: File Path : указать файл для анализа. Chunk Size : позволяет определить размер текстовых сегментов. Temperature of Language Model : для точной настройки поведения языковой модели. Batch Mode : позволяет указать, следует ли запускать сценарий в пакетном режиме. Report Generation : предоставление возможности создать отчет. Vector Database Selection : позволяет выбирать между базами данных векторов сосновой шишки и цветности. ASR (Automatic Speech Recognition) Model : для выбора подходящей модели ASR. |
Storage_vector.py | Сценарий storage_vector.py предлагает две основные функции: pinecone_storage и chroma_storage, обе предназначены для облегчения хранения результатов в векторной базе данных. |
Файл | Краткое содержание |
---|---|
individuel.txt | Содержимое файла individuel.txt содержит элементы, которые анализируются в рамках каждой подтемы. |
общий.txt | Содержимое файла general.txt содержит элементы, которые анализируются в рамках всей расшифровки. |
Файл | Краткое содержание |
---|---|
пакетный файл.txt | Файл batch.txt используется для облегчения обработки нескольких файлов. Это достигается путем перечисления путей к файлам, разделенных запятыми, чтобы указать, какие несколько файлов должны обрабатываться последовательно. |
WATCH_LIVE_Nvidia_Q2_Earnings_Call_NVDA.txt | WATCH_LIVE_Nvidia_Q2_Earnings_Call_NVDA.txt содержит расшифровку финансовых результатов NVIDIA за второй квартал 2023 года и веб-трансляцию вопросов и ответов. |
Короткий флаг | Длинный флаг | Описание | Тип | Статус |
---|---|---|---|---|
- о | --output_dir | Установка выходного каталога для отчета. По умолчанию – ./docx. | нить | Вариант |
- с | --кусок | Установка размера фрагмента для анализа. рекомендательные (GPT-3.5: 10000 в эн, 2000 в ж, GPT-4: 18000 в ен, 3600 в ж), по умолчанию 2000 | Нить | Вариант |
- т | --температура | Отрегулируйте температуру LLM в диапазоне от 0 до 2, более высокая температура означает больше творчества. Значение по умолчанию — 0,1. | плавать | Вариант |
- е | --извлекать | Извлекать человеческий голос из аудио или нет (Mac с Apple Silicon не поддерживается). По умолчанию установлено значение False. | логическое значение | Вариант |
- б | --партия | Используйте «True», если входной текстовый файл содержит несколько путей к файлам, значение по умолчанию — «False». | логическое значение | Вариант |
- в | --vectorDB | Выберите базу данных векторов (пинкоин или цветность), по умолчанию — «Нет». | нить | Вариант |
- м | --модель | Выберите модель шепота («крошечная», «базовая», «маленькая», «средняя», «большая-v2»). По умолчанию — средняя. | нить | Вариант |
Зависимости
Убедитесь, что в вашей системе установлены следующие зависимости:
- Aanaconda or Miniconda
- python >=3.7, <=3.9 (Apple silicon python >= 3.8, <=3.9)
- pytorch
Клонируйте репозиторий Report.ai:
git-клон https://github.com/Shou-Hsu/Report.ai.git
Перейдите в каталог проекта:
компакт-диск Report.ai
Установите конду:
установите миникод через https://docs.conda.io/projects/miniconda/en/latest/miniconda-install.html.
Создайте виртуальную среду:
conda create -n Report.ai python=3.9
Активируйте виртуальную среду:
Конда активирует Report.ai
Установите питорч:
установите pytorch через https://pytorch.org/get-started/locally/
Установите ffmpeg и libsndfile:
conda install -c conda-forge ffmpeg libsndfile
Установите зависимости:
pip install -r требования.txt
(Только для Mac) Обновите зависимости:
pip install -U число
python main.py <путь_файла> -c 10000
Установка учетных данных Openai или Azure openai в файле .env. Кроме того, установите учетные данные Pinecone или Chroma, если хотите хранить данные в VectorDB.
# выберите поставщика модели GPT Azure или OpenAI# Azure openAI credentialAZURE_OPENAI_API_KEY= AZURE_OPENAI_API_BASE= AZURE_OPENAI_API_VERSION= AZURE_OPENAI_API_TYPE= AZURE_DEPLOYMENT_NAME= EMBEDDING_DEPLOYMENT_NAME= #только если вы используете Azure OpenAI# # OpenAI credentialOPENAI_API_KEY= MODEL_NAME=# # учетные данные сосновая шишка (опция)PINECONE_API_KEY= PINECONE_ENV=# ChromaDB (опция)PERSIST_DIR= КОЛЛЕКЦИЯ_ИМЯ=
Измените tempelete/general.txt и tempelete/individuel.txt (элементы анализа, разделенные знаком ",").
#Например, если вы хотите проанализировать «сообщение о прибылях»: вы можете установить «Тема, Резюме, Объяснение финансового директора о краткосрочной финансовой ситуации, Описание генерального директора о перспективах компании, Вопросы, волнующие рынок» в tempelete/ общий.txt Одновременно установите «Аннотация, Инвестиционная информация, Ключевые слова» в tempelete/individuel.txt#. Если вы хотите создать краткое изложение «обычной встречи»: вы можете установить «Тема, Резюме, Тематическая работа» в tempelete/. общий.txt Одновременно установите «Аннотация, элемент действия, Ключевые слова» в tempelete/individuel.txt.
Запустите Report.ai в командной строке.
пример python main.py/WATCH_LIVE_Nvidia_Q2_Earnings_Call_NVDA.txt -c 10000
Publish project as a Python library via PyPI for easy installation.
Make project available as a Docker image on Docker Hub.
Обсуждения
Присоединяйтесь к обсуждению здесь.
Новый выпуск
Сообщите об ошибке или запросите функцию здесь.
Рекомендации по участию
Массачусетский технологический институт.
Langchain, OpenAI, Сосновая шишка, Chroma, Spleeter
Возвращаться