• Существует ли нейросеть для краткого пересказа книг?

    @rPman
    Языковые модели идеальны (на основе gpt) для задачи самморизации (text summaryze).

    Если текст не влезает в окно контекста, его дробят на части по смысловым разделителям (главы или в худшем случае абзацы) и собирают итоговый набор смыслов в один большой запрос и повторным промптом удаляют повторения.

    Хорошие языковые модели типа gpt3.5/gpt4/claude/bard более чем подходят для данной задачи, даже просто вручную поделить текст на главы и последовательно скормить их чату с максимально простым промптом, можно получить желаемое.

    Если поиграть с разными промптами, данную задачу можно решать даже с открытыми языковыми моделями. Точно помню была неплохая модель mistral, которую тюнили и продолжают тюнить на разные задачи, в т.ч. на большой размер контекста

    p.s. помним, ИИ не идеален, с некоторой долей вероятности он может чего то не понимать, где то выдумать и т.п. Чем лучше языковая модель тем качественнее результат, но полностью от ошибок пока не защищена ни одна модель.

    Если тебе дорога точность, ее можно повысить, обращаясь к нескольким моделям, создавать сложнее промпты и заставлять модель перепроверять свои же решения. Грубый пример - сначала ты просишь модель о самморизации, затем каждый ее ответ прогоняешь по каждой главе/абзацу с вопросом, говорится ли об этом в каждом отдельном месте, причем используя разные модели можно с хорошими шансами повысить качество результата.

    Языковые модели плохо работают с моментальными ответами, но хорошо с рассуждениями, и еще лучше с приведенными примерами перед промптом.

    Есть разные лайфхаки в промптах, которые можно использовать чтобы еще больше улучшить результат. Из недавних рекомендаций:
    * надавите на эмоции (как бы это не парадоксально не звучало), добавляйте к запросу что 'вам очень важно получить правильный ответ'...
    * языковые модели очень любят поддакивать вопрошающему, с большей вероятностью модель не найдет в твоих утверждениях ошибку, если ее об этом попросить напрямую 'есть ли у меня тут ошибка', но с готовностью попытается найти эту ошибку, если сказать что то типа 'я нашел тут ошибку, какая она'
    Ответ написан
    Комментировать
  • Существует ли нейросеть для краткого пересказа книг?

    Maksim_64
    @Maksim_64
    Data Analyst
    Bard может читать, документы которые лежат на гугл диске и составлять заключение о прочитанном. Вся инфа которую ты ему дашь может быть использована гуглом. То есть ни какой "конфиденциальной" информации, ну и там возможно еще какие то ограничения, что бы все это дело не превращалось в бизнес. Но функционал такой имеется, и для себя заключение по какой нибудь книге вполне сгодится. Так надо определенное расширение установить и будет работать.
    Ответ написан
    Комментировать
  • Как из цикла for получить последовательный ответ в одну строку?

    Vindicar
    @Vindicar
    RTFM!
    Советую поучить стандартную библиотеку языка, а потом уже браться за такие вещи.
    У тебя в коде уже есть пример, как список строк превратить в одну строку, соединив их разделителем.
    spisok = "".join(llavw)
    В чём проблема адаптировать этот же метод к твоей задаче? Сформируй список из отдельных строк, потом объедини их. Единственно, стоит убедиться, что ты подаёшь на вход именно список строк, а не каких-то других объектов.
    Ответ написан
    8 комментариев
  • Как версионировать на начале разработки?

    Версию увеличивать нужно при релизе.
    Если у тебя релиз на каждую фичу/мр/коммит - значит нужно на каждую фичу
    Ну и раз ты уже выбрал семвер - соблюдай его.
    Ответ написан
    Комментировать
  • Как версионировать на начале разработки?

    @rPman
    Оба варианта.
    Номер версии меняется с каждым релизом, даже если это багфикс.
    Но релиз может содержать сразу несколько фич так и одну.

    Выбери заранее, за что должен отвечать каждый подуровень версии.
    Например: первый уровень - это фактически новый продукт, с прежним именем и идеей но потенциально может быть изменена даже совместимость, второй уровень - это промежуточные релизы, особенно актуальны, если разработчик имеет высокий уровень взаимодействия со своими клиентами, собирает и реализует пожелания, в эти релизы фичи собираются пакетом (в нормальном процессе разработки командой одновременно реализуют сразу несколько фич), третий уровень лучше оставить для оперативных багофиксов или опоздавших к релизу фич (не у всех разработка идет идеально, бардак случается даже когда нет явных проблем). Третий уровень не обязателен, мало того, так как третий уровень используется для оперативного вмешательства, его даже не тестируют так качественно как второй и тем более первый.
    Ответ написан
    Комментировать
  • Как сразу добавить информацию в хранилище State (aiogram)?

    @MEDIOFF
    Python Developer
    Сразу после <>.set() пишешь:
    state = Dispatcher.get_current().current_state()
    И это будет и твой стейт которому ты можешь уже потом обращаться как к обычному
    state.update_data(key=value)
    Ответ написан
    2 комментария
  • Есть ли свободная программа для преобразования аудио в текст?

    Если бы было в достаточно хорошем качестве, то Yandex Speech и подобные ему сервисы бы обанкротились.
    Лучшее из бесплатных и оффлайн, что есть - Vosk.
    Ответ написан
    6 комментариев
  • Есть схема БД для медицинского центра. Реализованы ли здесь первые три нормальные формы?

    (я не только корректность схемы тут рассматриваю)
    Вроде всё ок, только видно некоторое дублирование данных в пациенте и сотруднике.

    Можно (не обязательно) попробовать ввести сущность "человек" (название черновое), у которого будет информация о паспорте, имени, и прочем.
    И пусть пациент/сотрудник ссылается на него.

    Можно так достаточно интересную связь сделать, когда один и тот же человек является одновременно и сотрудником и пациентом. (И например ввести запрет на выписывание лекарств самому себе)

    В прайс-листе можно попробова выделить отдельную сущность "услуга" - тогда можно будет сделать интересное ценообразование, когда одна и та же услуга, оказываемая врачами разных категорий, имеет разную цену.

    Таблица с лекартсвами выглядит как справочник, тк никаких связей с другими таблицами не имеет.

    Возможно, есть смысл ввести ещё справочник действующих веществ, чтобы можно было быстрее искать конкретные лекарства по этому действующему веществу.

    Можно попытаться формализовать планы лечения - но это отдельная очень большая задача.

    К таблице с адресами ещё есть смысл добавить номер ФИАС/КЛАДР/ГАР (уже запутался в этих системах) - это распространённая практика в России.

    Не совсем понятно, почему связь между пациентами и адресами - это именно один-ко-многим, а не многие-ко-многим. В зависимости от оказываемых услуг и случаев может оказаться удобным указать несколько адресов.

    Не совсем понятно, почему к одному пользователю привязано несколько пациентов.
    Если это на случай, когда, например, в аккаунт родителя добавляется ещё и его ребёнок, то, возможно, есть смысл добавить возможность добавлять этого ребёнка в аккаунты обоих родителей.
    Но тут ещё нужно подумать над тем, как соблюсти врачебную тайну, если произойдёт ситуация, когда родители разведутся - это скорее вопрос к бизнес-процессу, а не к данным.

    Не совсем понятно, что скрывается за ролями, и почему у пользователя не может быть нескольких ролей.

    Также не понятно, почему позиция жёстко привязана к отделу.
    Кажется, есть смысл ввести отдельно таблицу для позиций (в оргструктуре) и должностей (специализации и грейды врачей)
    + Часто оргструктуры имеют древовидную форму с отделами/подотделами/филиалами
    + Часто есть деление на юридическую структуру (которая записывается во всяких юридически значимых документах) и ресурсную оргструктуры, которая описывает реальный бизнес-процесс.

    Вместо флага is_doctor в позиции следует всётаки какой-нибудь enum сделать, ибо потом захочется делить сотрудников на более чем две категории.
    Ответ написан
    7 комментариев
  • Какие курсы проходить сетевому инженеру?

    @telegin
    Просмотреть весь СДСМ, начиная с азов.
    У самих вендоров есть куча бесплатного материала Accosiate уровня.
    Например у Juniper - Juniper Open Learning там же можно и попрактиковаться в vLabs
    Также стоит установить GNS3, EVE-NG - самостоятельно сделать несколько топологий, посмотреть как это работает.
    Ответ написан
    Комментировать
  • Какие курсы проходить сетевому инженеру?

    Mi11er
    @Mi11er
    A human...
    MCNA начать + сетевые лабы. Так же в сети куча задач по лабам.
    Ответ написан
    Комментировать
  • Как визуализировать границы районов Москвы на Python?

    trapwalker
    @trapwalker
    Программист, энтузиаст
    Ваш вопрос не по профилю ресурса.
    С таким нулевым пониманием темы вам вряд ли удастся решить эту задачу. Лучше сходить к фрилансерам, поскольку спектр производных задач, которые придётся решать в рамках этой, очень велик.

    Для начала вам придётся достать границы или полигоны районов Москвы. Сделать это можно из БД OpenStreetMap с помощью инструмента Overpass Turbo.
    Получить их можно сразу в GeoJson, чтобы отобразить на каком-нибудь картографическом виджете вроде Leaflet или аналогичных.
    Нужно будет закодить обработчики событий клика и хинта. В полигонах у вас уже будет тег с идентификатором района, нужно чтобы в отображаемом датасете были те же идентификаторы, или их придётся мапить отдельным скриптом.

    Если вам не понятно что-то из этого даже после продолжительного гугления, то стоит, всё же, сходить к фрилансерам, или забить на эту задачу, поскольку вам её решать рано.
    Ответ написан
    4 комментария
  • Как скорректировать плановую цель в связи с большим недовыполнением?

    KEugene
    @KEugene
    Вряд ли вы дождетесь готового ответа. Вам быстрее будет поискать ответы в материалах на тему Численные методы теории очередей. Думаю, в учебных пособиях такое рассматривается.
    Ответ написан
    1 комментарий
  • Как сделать, чтобы данные, которые я ввожу с клавиатуры, вводились в базу данных?

    axifive
    @axifive
    Software Engineer
    Потому что вы неверно формируете список пользователей.
    Нужно составлять список кортежей для отдельного пользователя, а не для каждого поля
    users = [(surname, name, patronymic, number)]
    Так можно отправлять сразу 2 и более пользователей
    users = [
      (surname, name, patronymic, number), 
      (surname, name, patronymic, number)
    ]

    Для одного можно без списка просто передать отдельно каждое поле
    cursor.executemany("INSERT INTO telephone_book VALUES(?, ?, ?, ?);", surname, name, patronymic, number)
    Ответ написан
    Комментировать
  • Как найти наибольшее по сумме чисел?

    Vindicar
    @Vindicar
    RTFM!
    number //= 1
    Может, всё-таки 10?

    Ну и почему ты делаешь проверку на максимум после каждой цифры (т.е. внутри while),а не после того как ты посчитал сумму всех цифр числа?
    Ответ написан
    1 комментарий
  • Как настроить ML-модель?

    Maksim_64
    @Maksim_64
    Data Analyst
    То что вы пытаетесь сделать это называется тюнинг гиперпараметров. Так не делается конечно. в sklearn есть решения из коробки. При чем это целый этап в машинном обучении по этому целый раздел документации этому посвящен. https://scikit-learn.org/stable/modules/grid_searc...
    Там не только представлены классы но и различные методики которые используются. Изучайте там примеры есть, так что решите свой вопрос.
    Ответ написан
    Комментировать
  • При чтении из файла, берет только последнюю строку. Почему?

    AlexNest
    @AlexNest Куратор тега Python
    Работаю с Python/Django
    Ну так все логично:
    for line in lines:
            try:
                q = requests.get(line, headers=headers)
            except requests.ConnectionError as e:
                continue
    
    result = q.content

    Значение q меняется каждую итерацию а получение значения q.content и вся дальнейшая работа происходит после завершения всего цикла и очевидно, что берется значение q, полученное последним.
    Ответ написан
    1 комментарий
  • Вопрос по реализации скачивания нескольких изображений. Как выполнить?

    Vindicar
    @Vindicar
    RTFM!
    Добавлял уникальный ID к имени товара, к имени фото

    Ну так добавляй ID к имени фото, но не к имени товара, делов-то.
    Ответ написан
    2 комментария
  • Как сделать, чтобы бот реагировал когда ставят реакцию на какое-либо сообщение?

    shurup77
    @shurup77
    Если вам нужно выполнять действие на определенную реакцию, то можно сделать как ниже, но учтите, что это способо для когов, если у вас не коги, то переделайте под себя:

    @commands.command()
    async def command_name(self, ctx):
        channel = self.bot.get_channel(channel_id) # берем id чата
        message = await channel.fetch_message(message_id) #получаем все о сообщении по его id
        resactions = [reaction for reaction in message.reactions if reaction.emoji in ['иконка реакции1', 'иконка реакции2', 'иконка реакции3']]
        for reaction in resactions:
            if reaction.emoji == 'иконка реакции1':
                 print("нажата реакция 'город'")
           elif reaction.emoji == 'иконка реакции2':
               # do your task...
    Ответ написан
    3 комментария
  • Как получить все сообщения из ТГ-чата?

    ZERGeich
    @ZERGeich
    Если операция разовая - зачем эти сложности?
    63aa4f14bd79e961647415.jpeg
    63aa4fb3a15c5111592398.jpeg
    Ответ написан
    1 комментарий
  • Какой конфигурации нужен ноут для комфортной локальной разработки в Дата Саенс?

    @humoured
    Вы всё на свете найдёте в коробке с карандашами
    Если речь про видеоускорители для вычислений, то никакой производитель ноутбуков не предложит решения. Лучшим вариантом будет сборка отдельного системника у себя дома со специфическим видеоускорителем. Его выбор уже зависит от бюджета, но можно взять даже банальный GTX1080Ti, сильно подешевевший на вторичном рынке. А так — выбор очень велик, стоит посмотреть в сторону Nvidia Tesla. В зависимости от поколения они будут стоить чуть ли не от 30 тысяч рублей на площадках продажи б/у железок.
    Ответ написан
    Комментировать