Можно ли в Python создавать бинарные файлы? Конечно можно.
Для этого в Python есть следующие инструменты:
▫️ тип данных bytes и bytearray
▫️ открытие файла в режиме wb (write binary) или rb (read binary)
▫️ модуль struct
Про модуль struct поговорим в первую очередь.
Файл в формате JSON или Yaml внутри себя содержит разметку данных. Всегда можно определить где список начался а где закончился. Где записана строка а где словарь. То есть формат записи данных содержит в себе элементы разметки данных.
В binary-файле данные не имеют визуальной разметки. Это просто байты, записанные один за другим. Правила записи и чтения находятся вне файла.
Модуль struct как раз и помогает с организацией данных в таком файле с помощью определения форматов записи для разных частей файла.
Модуль struct преобразует Python-объекты в массив байт, готовый к записи в файл и имеющий определённый вид.
Для этого всегда следует указывать формат преобразования (или, как оно здесь называется - запаковки).
Формат нужен для того, чтобы выделить достаточное количество байт для записи конкретного типа объекта. В последствии с помощью того же формата будет производиться чтение.
При этом следует помнить что мы говорим о типах языка С а не Python.
Именно формат определяет, что записано в конкретном месте файла, число, строка или что-то еще.
Вот какие токены формата у нас есть.
Помимо этого, первым символом можно указать порядок байтов. На разных системах одни и те же типы данных могут записываться по-разному, поэтому желательно указать конкретный способ из доступных. Если этого не сделать, то используется символ '@', то есть нативный для текущей системы.
В строке формата мы пишем в каком порядке и какие типы собираемся преобразовать в байты.
Запакуем в байты простое число, токен "i".
>>> import struct
>>> struct.pack('=i', 10)
b'\n\x00\x00\x00'
Теперь несколько float, при этом нужно передавать элементы не массивом а последовательностью аргументов.
>>> struct.pack('=fff', 1.0, 2.5, 4.1)
b'\x00\x00\x80?\x00\x00 @33\x83@'
Вместо нескольких токенов можно просто указать нужное количество элементов перед одним токеном, результат будет тот же.
>>> struct.pack('=3f', 1.0, 2.5, 4.1)
b'\x00\x00\x80?\x00\x00 @33\x83@'
Теперь запакуем разные типы
>>> data = struct.pack('=fiQ', 1.0, 4, 100500)
я запаковал типы float, int и unsigned long long (очень большой int, на 8 байт)
b'\x00\x00\x80?\x04\x00\x00...'
Распаковка происходит аналогично, но нужно указать тот же формат, который использовался при запаковке. Результат возвращается всегда в виде кортежа.
>>> struct.unpack('=fiQ', data)
(1.0, 4, 100500)
Как видите, ничего страшного!
#lib#basic
🆕Транскрипт - новый инструмент для преобразования аудио и видео в текст.
• Поддержка двух моделей: OpenAI и WhisperX
• Обработка аудио и видео файлов длительностью до 1 часа
• Диаризация: автоматическое определение говорящих
• Распознавание речи на различных языках
• Экспорт результата в формате TXT и JSON
💬 Легко транскрибируй голосовые заметки, интервью, подкасты и видеоролики!
❗️Инструмент находится в стадии бета-тестирования. Мы будем рады вашим отзывам и предложениям.
#aitools@gptunnel#whisper@gptunnel
Хороший и быстрый голосовой ввод где угодно без подписки — Handy
Голосом вводить текст гораздо быстрее, чем печатать руками, но не у всех сервисов есть кнопочка «микрофона». А системные методы вроде [Windows]+[H] или [Fn]+[Fn] на маке, ради скорости жертвуют качеством распознавания.
В конце 2024 на основе модели Whisper научились делать расшифровку за несколько секунд с качеством выше среднего.
Самое крутое что модель хорошо распознает современную лексику, бренды, и переключается с английского на русский на лету:
Зуммерские редфлаги и проявленность AI-слопа в куклах Лабуба.
Я в тексте выше ничегоне редактировал, оно само проставило запятые, заглавные, тире и точки исходя из интонации!
Правда чтобы так распознало, пришлось перестать мямлить
🤭
На видосе, например гораздо ближе к тому как оно в реальности работает.
При этом нейронки даже сырой текст обрабатывают хорошо, так что... не проблема? Лишь бы не разучиться писать и говорить внятно такими темпами.
Есть подписочные https://wisprflow.ai и https://superwhisper.com которые на эту модель сверху накручивают «умную обертку» в виде облачных LLM пост-обработчиков и автоматизаций.
Но во первых это еще одна подписка, а во вторых, они слишком глубоко забуриваются в систему, и собирают доп. данные в виде заголовок окон и другой инфы. Короч фе 🥞
Я сам пользуюсь открытым и бесплатным Handy — он супер простой и легкий. Но при желании сверху тоже можно накрутить постобработку через API (типа более приватно, но вопрос доверия по факту)
Я не исопльзую еще потому, что замедляет эффект от быстрой расшифровки.
Единственное ограничение у этой штуки — нужен компьютер с видеокартой, либо ноут вышедший последние 2 года (NPU ядра), либо мак M-серии.
Технически на «чистом» CPU тоже работает качественно, просто обработка у меня на слабом ноуте занимает больше 10 секунд для среднего абзаца, и это выбивает из потока.
Выбирайте Whisper Turbo и настраивайте на горячую клавишу, я себе сделал на CapsLock.
Делитесь если тоже чем то таким пользовались, или если у вас завелось!
p.s пост походу был пророческим
🎤Ссылки на утро — второй канал
⏲Устойчивый VPN за звезду
#toolhacks@cogload#whisper@cogload
🧵 1/n I am participating in @Supabase's AI Hackathon and challenging myself to complete "Chat With Any Video" in ≤24 hours. 👨🏻💻 Based on #ChatGPT and #Whisper API, all code will be Open Source, I'll continue to update here during breaks. 🔔 Follow me. https://t.co/Y14z5xOU2x
— JimmyLv.eth (🐣, 🐣) 吕立青 2𐃏22 🇨🇳 (@Jimmy_JingLv) Apr 16, 2023
#book#OpenAI#Whisper
📱
Learn OpenAI Whisper: Transform your understanding of GenAI through robust and accurate speech processing solutions
🏍Josué R. Batista
📶11 MB
Master automatic speech recognition (ASR) with groundbreaking generative AI for unrivaled accuracy and versatility in audio processing Key Features
Uncover the intricate architecture and mechanics behind Whisper's robust speech recognition
Apply Whisper's technology in innovative projects, from audio transcription to voice synthesis
Navigate the practical use of Whisper in real-world scenarios for achieving dynamic tech solutions
-----
Main channel:@repo_science
Coupons:@freecoupons_reposcience
-----
Возможно я уже тоже внутри нейросети.
Есть такая модель для расшифровки аудио от OpenAI, называется Whisper.
Есть обертка для этой модели и она локально на вашем компе расшифровывет любое видео или аудио в текст, бесплатно без смс.
Нужна только современная видеокарта или Мак с процессором М серии. На старых компах на CPU тоже будет работать, но оооочень медленно.
Так вот, у модели есть прикол с русским языком: когда на записи не слышно голоса и играет музыка, в расшифровке модель пишет фразу «субтитры создавал DimaTorzok».
Видимо модель обучали на субтитрах YouTube и она проассоциировала музыку без голоса с этой фразой. На Турецком языке такой же прикол есть, но с другим ютубером.
Скорее всего, какие-то из моих ютубных эфиров или тг заметок тоже уже «в сознании» одной из нейронок.
Ощущения странные. С одной стороны вроде бы и забавно, а с другой стремно — я же не могу контролировать что оно там про меня потенциально запомнило.
Возможно самое время заняться LLM-оптимизацией личного бренда)
🎤Ссылки на утро — второй канал
⏲Устойчивый VPN за звезду (2₽)
#нейронка@cogload#ToolReview@cogload
#whisper@cogload
🆒 Не прошло и 24 часов с официальной конференции #OpenAI#DevDay как мы в своем самом популярном в телеграм боте @Plasma_GPT_AI_bot поддержали все новые текстовые модели #chatGPT 4 и даже запустили голосовое общение с ботом (доступен выбор всех голосов).
Новый #whisper v3 очень реалистично озвучивает текст.🔥 В боте есть также доступ к десяткам других популярных текстовых LLM, генерации картинок в 20+ моделях (Midjourney 5.2) и многое другое.
Тестируем и делимся с друзьями! А ваши идеи по улучшениям в комментарии 🚀
#typescript#ai#cross_platform#desktop#openai#rust#transcribe#whisper
You can use Vibe to easily transcribe audio and video files on your own computer without needing the internet. It works offline using OpenAI’s Whisper engine, so your data stays private and never leaves your device. Vibe supports many languages, multiple file formats like SRT for captions, and can transcribe from system audio, microphone, or popular websites. It runs on Mac, Windows, and Linux, and offers features like batch transcription, real-time preview, translation, and AI-powered summaries. This helps you quickly get accurate transcripts while keeping your information secure and under your control.
https://github.com/thewh1teagle/vibe