added correct envs

- env.yml needs fixing (not working)
- ui.py still needs improvements
This commit is contained in:
2025-11-13 12:00:38 +03:00
parent 6147eb1597
commit 9e67b36842
5 changed files with 126 additions and 6 deletions
+15
View File
@@ -0,0 +1,15 @@
name: notecast-cpu-mps
channels:
- pytorch
- conda-forge
- defaults
- bioconda
dependencies:
- pytorch
- ffmpeg
- torchvision
- torchaudio
- transformers
- python=3.12
- customtkinter
- openai
+15
View File
@@ -0,0 +1,15 @@
name: notecast-cuda
channels:
- pytorch
- nvidia
- conda-forge
- bioconda
dependencies:
- pytorch
- ffmpeg
- torchvision
- torchaudio
- transformers
- python=3.12
- customtkinter
- openai
+12 -3
View File
@@ -370,11 +370,13 @@ class TranscriberApp(ctk.CTk):
debug_api_model_var: str = self.api_model_var.get() if self.api_model_var.get() else "Not set"
debug_base_url_var: str = self.base_url_var.get() if self.base_url_var.get() else "Not set"
debug_transcription_lang_var = self.transcription_lang_var.get() if self.transcription_lang_var.get() else "Not set"
debug_custom_prompt_var: str = self.custom_prompt_textbox.get() if self.custom_prompt_textbox.get() else "Not set"
self.ui_logger.info(f"===== LLM Setting =====")
self.ui_logger.info(f"API key: {debug_api_key_var}")
self.ui_logger.info(f"Model name setting: {debug_api_model_var}")
self.ui_logger.info(f"Base URL setting: {debug_base_url_var}")
# self.ui_logger.info(f"Custom prompt: {debug_transcription_lang_var}") # <-- issue here
self.ui_logger.info(f"=======================")
@@ -432,11 +434,18 @@ class TranscriberApp(ctk.CTk):
if self.create_conspect.get():
# TODO: add custom prompt ability here
# TODO: add logging here
# TODO: add progressbar instead of tqdm
self.ui_logger.info(f"Starting creating conspect via {self.api_model_var.get()}...")
with open("utils/default_prompt.json", "r", encoding="utf-8") as f:
default_prompt = json.load(f)["prompt"]
with open("utils/default_prompt.txt", "r", encoding="utf-8") as f:
default_prompt = "\n".join(f.readlines())
# if self.custom_prompt_textbox.get(): # <-- issue here
# prompt = transcription + "\n" + self.custom_prompt_textbox.get()
# else:
# prompt = transcription + "\n" + default_prompt
prompt = transcription + "\n" + default_prompt
prompt = transcription + default_prompt # if custom prompt is empty do something
request = LLMrequest(
api_key=self.api_key_var.get(),
model_name=self.api_model_var.get(),
-3
View File
@@ -1,3 +0,0 @@
{
"prompt": "Используй ТОЛЬКО текст из транскрибации. Любая информация, которой нет в транскрибации, запрещена. Если какой-то факт или определение раскрыт не до конца, или лектор сказал что-то неполно, или тему нужно дополнить для лучшего понимания — вставляй дополнение сразу в нужное место, но только под отдельной подписью: AI overview: текст дополнения (confidence: low|medium|high) Ответ должен быть строго в формате Markdown (.md). Никаких 'привет', 'вот результат' и т. п. — только готовый текст. Все цитаты из транскрибации — буквально, максимум 25 слов подряд."
}
+84
View File
@@ -0,0 +1,84 @@
Используй **исключительно текст из транскрибации** как первоисточник.
Разрешается расширять тему и объяснять глубже, но **дополнительная информация должна быть строго отделена и явно помечена**.
### Цель
Создать структурированную, полный образовательный конспект лекции **формата Obsidian Markdown**, который:
* воспроизводит информацию из транскрибата максимально точно
* дополняет и разъясняет сложные моменты
* превращает речь в ясный учебный материал
* сохраняет смысл, порядок, и логическую структуру лектора
* улучшает академичность и связность
### Правила работы с транскриптом
* Используй только факты из транскрибации как основу.
* **Не выдумывай факты**, которых не было.
* **Дополнительные пояснения допустимы**, но строго в спец-блоках (см. ниже).
* Цитаты из оригинального текста — **дослівно**, максимум **25 слов подряд**.
* Нельзя писать «лектор сказал», «в тексте было» — пишем как учебный материал.
### Блоки для расширений
Если нужно объяснить термин, дополнить концепцию, исправить недосказанность — используй:
```
> AI clarification:
> Ваше дополнение, объяснение, аналогия или расширение темы.
```
Для коротких определений:
```
**AI note:** краткое пояснение
```
### Обязательная структура результата
```
# Название темы
## Ключевые идеи
- маркеры
- …
## Основные понятия и определения
- **Термин** — определение
- …
## Подробный конспект
(структура, логика, абзацы, тезисы)
> Цитаты (≤25 слов)
## Примеры и объяснения
- собственные пересказанные примеры из транскрибации
- при необходимости:
> AI clarification
## Выводы и ключевые инсайты
- …
## Вопросы для самопроверки
- …
```
### Обязательный формат Obsidian Markdown
Используй следующие возможности Obsidian:
| Элемент | Формат |
| ----------------- | ----------------------------------------- |
| Заголовки | `#`, `##`, `###` |
| Цитаты | `>` |
| Списки | `-` и `1.` |
| Врезка/внимание | `> [!note]` `> [!tip]` |
| Код/формулы | `\`…`` и блоки ``` |
| Выделение | `**жирный**`, `_курсив_`, `==выделение==` |
| Внутренние ссылки | `[[Термин]]` если термин важный |
| Таблицы | стандартные markdown таблицы |
| Чек-лист | `- [ ]` |
| Формулы | Для однострочных формул используй $ formula $. Для мультистрочных формул используй $$ formula $$ |
**Не добавляй** приветствий, заключений, обращений, пояснений формата. Только готовый md-текст.