@ru_python

Страница 8610 из 9768
Amir
03.04.2019
13:06:31
#работа #job #вакансия #офис #Москва #Python #fulltime Город: Казань, ул Щапова Компания: Делион Формат: Полная занятость, офис, в дальнейшем можно удаленно ЗП вилка: 80 - 120 на руки(все обсуждается) Друзья, компания Делион запустила новый проект и срочно разыскивает себе в команду страстного до красивого кода Mid или Senior Python разработчика! Технологии и инструменты: Backend: Python 3, Django, Nginx, Postgresql, REST Что нужно будет делать: ✔️ Участвовать в проектировании архитектуры сервисов и серверного приложения ✔️ Работать в команде с бизнес-аналитиком ✔️ Проводить Code-review Основные требования: ✔️ Опыт в разработке не менее 2х лет Мы готовы предложить: ✔️ Полную атмосферу комфорта ✔️ Дружную и адекватную команду специалистов, любящих свое дело Прием вопросов и CV открыт здесь: @Amirogramm Буду рад обсудить подробнее!+7 903 388 65 63

Tishka17
03.04.2019
13:07:43
Amir
03.04.2019
13:08:39
Google
Pavel
03.04.2019
13:33:32
получается, что да
так и в чем трудность?

Tigran
03.04.2019
13:33:44
у меня трудности с считыванием из файла, который записывается в реал-тайме

текущая реализация алгоритма такая, что она получает на вход некий wav и начинает что-то там считать

трудность в том, что wav постоянно записывается

Soare
03.04.2019
13:35:28
Swaroop Chitlur — Укус Питона (2013) я так понимаю не актуальна книга?

Tigran
03.04.2019
13:36:03
читаю я wav следующим образом

sample_rate, samples = input_data=wavfile.read(filename=input_filename, mmap=True)

думаю тут понятно, почему оно не будет работать в реал-тайме)

Pavel
03.04.2019
13:40:30
думаю тут понятно, почему оно не будет работать в реал-тайме)
если я правильно понял, ты читаешь его scipy'ем, который его читает вообще говоря не очень здорово. тебе нужно сделать собственный ридер файла, который бы yield'ил семплы по мере их поступления.

Pavel
03.04.2019
13:41:24
а почему вообще wav-файлы, откуда они взялись? доступа к сырым данным rtp нет?

Tigran
03.04.2019
13:42:14
Астериск их отдает

Google
ivan
03.04.2019
13:42:49
У меня есть список корутинов Как мне вызвать в бэкграунде новую корутину, когда завершатся все из списка По-другому, как сделать callback для списка корутин?

Pavel
03.04.2019
13:43:16
Астериск их отдает
ясно. в общем, пиши свою читалку

Tigran
03.04.2019
13:43:35
Aram
03.04.2019
13:46:01


Когда in используется в return --contains-- не вызывается?

Как тогда реализован in , если по определению он вызывает --contains--

Tishka17
03.04.2019
13:48:18
Астериск их отдает
а что, астериск сам не может тишину детектировать?

Когда in используется в return --contains-- не вызывается?
у тебя делается in self.data, а не in self, поэтому вызовется self.data.__contains__

Aram
03.04.2019
13:49:11
Да, но что в таком случае делает in?

Он вызывает какой-то другой -- contains--?

Tishka17
03.04.2019
13:49:42
да, метод конейнс у даты, а не у себя

Aram
03.04.2019
13:51:09
И когда он доходит до return что будет?

Получается так ? Def --contains--(self.data, x): Return x in self.data

Pavel
03.04.2019
13:52:06
вот это я понимаю, икона стиля

Tishka17
03.04.2019
13:52:54
Получается так ? Def --contains--(self.data, x): Return x in self.data
ты задолбал, юзай уже тройной или одинарный ` для выделения кода

И когда он доходит до return что будет?
смотри, вот у тебя класс class C: def __contains__(self, x): return x in self.data

это примерно то же самое что class C: def __contains__(self, x): data = self.data return data.__contains__(x)

Pavel
03.04.2019
13:54:27
Астериск их отдает
кстати, да. Тишка хороший вопрос поднял. Какую задачу ты вообще решаешь (кроме детектирования речи)?

Tishka17
03.04.2019
13:54:47
то есть a in c будеь в случае этого класса аналогичен c.data.__contains__(a)

Aram
03.04.2019
13:57:47
То есть для c.data этот contains другой? Какой-то базовый? Который возвращает true или false?

Google
Tigran
03.04.2019
13:58:13
кстати, да. Тишка хороший вопрос поднял. Какую задачу ты вообще решаешь (кроме детектирования речи)?
разбиение речевой активности, отправка на google speach to text в реал-тайме

Tigran
03.04.2019
13:58:51
а дальнейший юзкейс?
дальше там проверяют в астериске по скриптам вроде как

ответы клиента

Pavel
03.04.2019
13:59:06
потому что вообще ничто не мешает через старый добрый agi заставить астериска самого кинуть голос в гуглёвый stt

без каких либо питонов

как я понимаю, это потом как-то отражается на дайлпланах?

Aram
03.04.2019
14:00:51
Перегруженный contains для self возвращает contains для data, ток что делает этот последний возвращает true/false?

Tigran
03.04.2019
14:00:54
текущую реализацию не знаю, знаю, что оно работает в синхронно

клиент договорил, отправили на stt, получили ответ

это задержка в среднем на 2-3 секунды

хочется отправлять на stt в реал-тайме

Pavel
03.04.2019
14:02:56
хочется отправлять на stt в реал-тайме
что ты хочешь отправлять, если он еще не договорил?

Tishka17
03.04.2019
14:03:09
разбиение речевой активности, отправка на google speach to text в реал-тайме
неужели астериск сам не умеет разбивать по активности?

Pavel
03.04.2019
14:03:34
неужели астериск сам не умеет разбивать по активности?
умеет, есть скрипты для agi для таких дел

Tishka17
03.04.2019
14:03:52
ну и я о том

вот уж agi или rgi или что там нынче - хз

Pavel
03.04.2019
14:04:18
ответ
но ведь он еще говорит

Google
Tigran
03.04.2019
14:04:32
поэтапно

я нуб в этом, первая задача на новом рабочем месте

Pavel
03.04.2019
14:04:50
как то очень упорото поставлена задача, кмк

Tigran
03.04.2019
14:05:14
да, я пока исследую вопрос, нежели что-то делаю

Pavel
03.04.2019
14:05:59
короче, хочется чего? чтобы астериск реагировал на голосовой ввод с минимальной задержкой?

Tigran
03.04.2019
14:06:19
именно

Ilya
03.04.2019
14:06:32
Всем привет! Я руководитель тренд-аналитической компании Tralytics. Мы предлагаем услуги аналитики трендов в приложениях. Хочешь узнать подробности - пиши в личку!

Pavel
03.04.2019
14:06:44
тогда чтение записываемого wav из питона - заведомо провальный вариант

даже если писать в рам

Tigran
03.04.2019
14:07:03
сейчас оно реагирует после некой длительности тишины

отправляет в stt и получает ответ

в средней сложности это длится 2-3 секунды

что много (типа)

Aram
03.04.2019
14:07:50
переформалирую, 'self.data.__contains__(x)' Как приходит к true или false в конце? Короче как работает сам contains?

Pavel
03.04.2019
14:09:22
переформалирую, 'self.data.__contains__(x)' Как приходит к true или false в конце? Короче как работает сам contains?
переформалирую от слова формалин? дефолтный контейнз работает как for x in self: if x == value: return True return False для списков.

Pavel
03.04.2019
14:09:56
у сета своя реализация

у дикта еще своя

Tishka17
03.04.2019
14:10:01
ну например пробегается по всем элементам и смотрит чему равны

в сете - по хэшу вытаскивает адрес памяти и проверяет

Google
Alex
03.04.2019
14:11:42
переформалирую, 'self.data.__contains__(x)' Как приходит к true или false в конце? Короче как работает сам contains?
что такое self.data? зачем ты вызываешь дандер метод у него вместо x in self.data?

Pavel
03.04.2019
14:14:56
сейчас оно реагирует после некой длительности тишины
вообще говоря, если я правильно понимаю, тебе нужно поймать один из множества заранее определенных токенов из распознанного голосового ввода. вообще говоря, у спич ту текста гуглячьего есть потоковая обработка, которая yield'ит тебе респонзы, пока поток не кончится. поэтому ты мог бы завернуть голос сразу в распознавалку, а уж она там сама разберется, тишина там или нет PS. такой метод может не подойти в силу огромного множества причин

https://github.com/python/cpython/blob/master/Objects/listobject.c#L446
эту ссылку я сюда приносил буквально на той неделе :) что как бы говорит о частоте одинаковых дискуссий

Страница 8610 из 9768