Python Portal
54.6K subscribers
2.52K photos
410 videos
51 files
1.04K links
Всё самое интересное из мира Python

Связь: @devmangx

РКН: https://clck.ru/3GMMF6
Download Telegram
Кто-то протестировал 35 AI-моделей на 172 млрд токенов реальных вопросов по документам.

Цифры по галлюцинациям должны навсегда закрыть аргумент: «просто дайте модели документы».

Вот что на самом деле показали данные.

Лучшая модель во всём исследовании, в идеальных условиях, выдумывала ответы в 1,19% случаев. Это звучит немного — пока не понимаешь, что это потолок. Абсолютно лучший возможный результат. При оптимальных настройках, которые почти никогда не используются в реальных внедрениях.

Типичные топ-модели показывают 5–7% фабрикаций в задачах document Q&A.
Не на вопросах из памяти.
Не на абстрактном рассуждении.
А на вопросах, где ответ буквально лежит в документе перед моделью.

Медианное значение среди всех 35 протестированных моделей — около 25%.

То есть каждый четвёртый ответ — выдумка, даже когда исходный материал предоставлен.

Затем протестировали, что происходит при увеличении окна контекста. Всем компаниям, продающим 128K и 200K context как решение проблемы галлюцинаций, стоит внимательно прочитать этот момент.

При длине контекста 200K каждая модель в исследовании превысила 10% галлюцинаций. Показатель почти утроился по сравнению с оптимальными более короткими контекстами.

Чем длиннее окно контекста, тем выше уровень фабрикаций.
Фича, которую продают как решение проблемы, на практике заметно её усугубляет.

Есть ещё одно наблюдение, о котором говорят недостаточно.

Навык grounding (привязки к источнику) и способность избегать фабрикаций — это две разные способности у моделей.

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

172 млрд токенов. 35 моделей.

Вывод у всех один и тот же.

Передача LLM самого документа не решает проблему галлюцинаций. Она лишь меняет форму их проявления.

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
26👍14🤯4
Всегда используйте подготовленные выражения, чтобы предотвратить SQL-инъекции.

Вот пример кода, который делает вашу программу уязвимой к малым атакам:

user_input = request.form['username']
query = f"SELECT * FROM users WHERE username = '{user_input}'"
cursor.execute(query)


Когда вы пишете код таким образом, опасность заключается в том, как формируется SQL-запрос до того, как он попадет в базу данных. Прежде чем база данных увидит запрос, Python вставляет ввод пользователя напрямую в SQL-строку. База данных получает уже готовое SQL-выражение и просто выполняет его. У базы данных нет способа понять, какая часть — это данные, а какая — SQL-логика. Риск в том, что данные могут изменить логику программы.

Когда вы используете подготовленные выражения:

user_input = request.form['username']
query = "SELECT * FROM users WHERE username = ?"
cursor.execute(query, (user_input,))


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

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
23🔥5
This media is not supported in your browser
VIEW IN TELEGRAM
Как на самом деле работают LLM

Недавно прошёл 2-часовой вебинар на эту тему.
42 слайда — делюсь с вами

https://paraschopra.github.io/how-llms-work/

(стрелки влево и вправо на компьютере, свайп влево и вправо на мобильном устройстве)

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
15👍6
Другие: не относись к женщинам как к объектам

Тем временем я:

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
😁6911🤔3🤯1
Самые быстрорастущие проекты на GitHub в этом месяце:

1. openclaw/openclaw (122K stars)
ваш собственный персональный AI-ассистент, работает 24/7 на любой ОС

2. obra/superpowers (30.7K stars)
фреймворк agentic-skills. plug-and-play инструменты для AI-агентов

3. ruvnet/RuView (30.4K stars)
превращает обычные Wi-Fi сигналы в определение позы человека в реальном времени
без камер, без датчиков — только Wi-Fi

4. 666ghj/MiroFish (17K stars)
движок swarm intelligence, который предсказывает что угодно

5. moeru-ai/airi (16K stars)
self-hosted AI-компаньон с голосовым чатом в реальном времени
работает на вашей машине — вы полностью его контролируете

6. shanraisshan/claude-code-best-practice (11.8K stars)
репозиторий с лучшими практиками разработки с Claude Code

7. badlogic/pi-mono (11.8K stars)
полный toolkit для AI-агентов: CLI, единый LLM API, web-интерфейс, Slack-бот

8. bytedance/deer-flow (10.4K stars)
open-source SuperAgent от ByteDance — самостоятельно исследует, пишет код и создаёт

9. shareAI-lab/learn-claude-code (9K stars)
создание клона Claude Code с нуля — нужен только bash

10. p-e-w/heretic (7.6K stars)
автоматически убирает guardrails у любой языковой модели

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
20👍7🔥5
Python медленный, потому что его динамическая архитектура требует runtime-dispatch при выполнении каждой операции.

В этой статье много хороших разборов, которые помогают лучше понять, как работает Python. Очень хорошая работа!

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
14👍3
Развлечения в 2026

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
54😁19😢7🔥2
Представили browser-whisper

Транскрибация аудио в текст, которая работает нативно прямо в браузере.

Использует WebCodecs и WebGPU под капотом.

Особенности:

- без настройки backend
- не требуется API-ключ
- 100% приватно и работает офлайн
- всего 3 строки кода, чтобы встроить

Установка:

npm i browser-whisper


GitHub-репозиторий ↓

https://github.com/tanpreetjolly/browser-whisper

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
15
Media is too big
VIEW IN TELEGRAM
Python Tip: Перегрузка операторов

Это очень важная концепция в Python.

Задумывались ли вы, как Python понимает, что означает оператор +? Для чисел — это сложение; для строк — конкатенация; для списков — объединение. Это и есть перегрузка операторов в действии.

Перегрузка операторов означает задание специального поведения для операторов (+, -, *, == и т. д.) в ваших пользовательских классах. Вы определяете, как эти операторы должны работать с вашими объектами.

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
17👍4
Alibaba показали, что AI в кодинге не отнимает работу — он пишет легаси, которое ты будешь чинить ближайшие 10 лет 🤣

Пройти кодинг-тест один раз — легко. Поддерживать этот код 8 месяцев, чтобы он не развалился? Для AI почти невозможно.

Alibaba протестировали 18 AI-агентов на 100 реальных кодовых базах в течение 233 дней. Смотрели не на «быстрые фиксы», а на долгосрочную стабильность.

Результаты впечатлили:

— 75% моделей ломали уже работающий код в процессе поддержки
— Только Claude Opus 4.5/4.6 держали >50% zero-regression rate
— Все остальные накапливали техдолг, который в итоге «ронял» кодовую базу

Проблема в том, что мы до сих пор ориентировались на snapshot-бенчмарки вроде HumanEval — «работает ли сейчас?»

Новый бенчмарк SWE-CI задаёт другой вопрос:
«А будет ли это работать через 8 месяцев эволюции?»


Большинство AI-агентов - это quick-fix артисты:
код проходит тесты сегодня, но завтра превращается в боль поддержки.

Они не строят софт, они скорее строят карточный домик.

Нарратив стал честнее: писать код могут почти все модели. поддерживать - почти ни одна.

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
39👍15😁1
🤭🤭🤭

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
😁858🌭2🤣2
Какие-то гении выложили в open source полноценный набор инструментов для отслеживания спутников и декодирования их радиосигналов локально.

Тебе даже не нужен интернет — используется SDR (software-defined radio), чтобы напрямую принимать погодные снимки и сырые данные из космоса прямо на твой жёсткий диск.

100% open source.

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍34🤔41
Фильтр Калмана оценивает истинное состояние системы на основе шумных измерений.

Он работает, объединяя две вещи:

• модель эволюции системы
• неточные показания датчиков

Алгоритм выполняется в цикле из двух шагов.

1. predict (предсказание)
- используется модель системы для оценки следующего состояния.
- на выходе получаем предсказанное состояние и неопределённость.

2. update (обновление)
- поступает новое измерение.
- оно сравнивается с предсказанием.
- оценка корректируется.

Коррекция взвешивается с помощью коэффициента Калмана (Kalman Gain):

• больше доверия модели → небольшая коррекция
• больше доверия датчику → сильная коррекция

Неопределённость отслеживается с помощью ковариационной матрицы (Covariance Matrix).

Со временем оценка сходится.

Шум отфильтровывается.
Проявляется истинное состояние.

Используется в:

• локализации в робототехнике
• беспилотных автомобилях
• дронах и системах управления полётом
• GPS-трекинге
• объединении данных с датчиков (sensor fusion)

Это рекурсивная система, которая непрерывно уточняет своё представление о состоянии мира в условиях неопределённости.

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍146🔥3
Перестаньте использовать Python-код для построения «пирамид» или «стрелок»

Если у вас слишком много уровней вложенных if, код перестаёт быть читаемым и удобным для поддержки — вы строите пирамиду. 😄

Посмотрите:

def process_user(user_data):
if user_data:
if 'name' in user_data:
if user_data['name']:
if 'email' in user_data:
if validate_email(user_data['email']):
return save_user(user_data)
else:
return "Invalid email"
else:
return "Email missing"
else:
return "Name empty"
else:
return "Name missing"
else:
return "No data"


Это называется «антипаттерн стрелки» (Arrow Anti-Pattern) или «пирамида смерти» (Pyramid of Doom). Основной сценарий спрятан в самом низу. Чтобы понять, что делает код, приходится держать в голове 4+ уровней вложенности.

А вот этот вариант гораздо лучше:

def process_user(user_data):
# Сначала обрабатываем все ошибки
if not user_data:
return "No data"

if 'name' not in user_data:
return "Name missing"

if not user_data['name']:
return "Name empty"

if 'email' not in user_data:
return "Email missing"

if not validate_email(user_data['email']):
return "Invalid email"

return save_user(user_data)


Это линейный стиль «сверху вниз», а не «вглубь и обратно». Ошибки явно обрабатываются в начале, а основная логика выделена в конце. Если данные некорректны — происходит ранний выход из функции (early return).

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
28👍11😁3🤝2
Код на Python:

print('Yes' if all([]) or any([]) else 'No')


Каков результат выполнения этого кода?

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
12😁2
Кто-то выложил в open source компьютер, который работает даже тогда, когда весь интернет отключен.

Он называется Project N.O.M.A.D.

Это автономный офлайн-сервер для выживания с AI, Википедией, картами, медицинскими справочниками и полноценными образовательными курсами.

Никакого интернета. Никакого облака. Никаких подписок. Он просто работает.

Вот что внутри:

→ Локальный AI-ассистент на базе Ollama (полностью офлайн)
→ Вся Википедия, доступная для скачивания и поиска
→ Офлайн-карты любого выбранного региона
→ Медицинские справочники и гайды по выживанию
→ Полные курсы Khan Academy с отслеживанием прогресса
→ Инструменты шифрования и анализа данных через CyberChef
→ Загрузка документов с семантическим поиском (локальный RAG)

И вот самая интересная часть:

Солнечная панель, аккумулятор, мини-ПК и Wi-Fi-точка доступа. Всё. Это и есть твоя автономная офлайн-станция знаний. Потребление — от 15 до 65 Вт. Работает из хижины, автодома, парусной лодки или бункера.

Компании продают «prepper-накопители» со статичными PDF за $185. А здесь ты получаешь полноценный AI-мозг, целую энциклопедию и реальные курсы — бесплатно.

Одна команда для установки.

100% open source. Лицензия Apache 2.0.

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
40👍19🤣5🤔1
Самые быстрорастущие проекты на GitHub за эту неделю:

1. msitarzewski/agency-agents (+23.2K stars)
полноценное AI-агентство у вас под рукой: фронтенд-волшебники, комьюнити-ниндзя, «проверяльщики реальности».

2. obra/superpowers (+19.2K stars)
фреймворк agentic-навыков, который только что достиг 100K звёзд. plug-and-play инструменты для разработки с AI-агентами.

3. 666ghj/MiroFish (+17.6K stars)
движок роевого интеллекта, который умеет предсказывать что угодно. простой, универсальный, с открытым исходным кодом.

4. volcengine/OpenViking (+10.2K stars)
open-source база контекста для AI-агентов. объединяет память, ресурсы и навыки.

5. lightpanda-io/browser (+9.9K stars)
headless-браузер, созданный для AI и автоматизации. без Chrome, без лишнего. написан на Zig.

6. pbakaus/impeccable (+6.4K stars)
дизайн-язык, который прокачивает ваш AI-harness в плане дизайна. делает vibe-coded UI более осмысленным и целостным.

7. alibaba/page-agent (+6.2K stars)
in-page GUI-агент на JavaScript от Alibaba. позволяет управлять любым веб-интерфейсом с помощью обычного языка.

8. andrewyng/context-hub (+5.2K stars)
слой управления контекстом для AI-агентов от Andrew Ng.

9. langchain-ai/deepagents (+4.9K stars)
agent-harness с планированием, файловым backend’ом и возможностью спавнить сабагентов.

10. microsoft/BitNet (+4.8K stars)
официальный фреймворк Microsoft для 1-битных LLM. полная производительность при почти нулевых вычислительных затратах.

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
11
Разберись с Multi-Stage Docker Builds - пригодится на собеседовании.

Что такое Multi-Stage Build?

Это способ использовать несколько инструкций FROM в Dockerfile, чтобы собирать чистые, компактные и готовые к продакшену образы. Позволяет разделить этапы сборки и выполнения .

Зачем использовать Multi-Stage Builds?

- Чтобы не тащить в продакшен инструменты сборки и исходный код.
- Существенно уменьшить размер образа.
- Повысить безопасность и производительность.

Ниже пример Multi-Stage Dockerfile для Node.js

# Stage 1: Build
FROM node:18 AS builder
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
RUN npm run build

# Stage 2: Serve
FROM nginx:alpine
COPY --from=builder /app/build /usr/share/nginx/html
EXPOSE 80


Пояснение:

- Первый этап: установка зависимостей и сборка приложения.
- Второй этап: используется лёгкий образ NGINX для раздачи собранных статических файлов.

В финальный образ попадает только результат сборки.

Плюсы:

- Меньший размер итогового образа.
- Чёткое разделение ответственности (build vs runtime).
- Работает с любым языком и фреймворком.

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
9👍4
Наткнулся на портфолио одного сеньор-разраба

использует Linux с 1999
27 лет опыта
C/C++ (27 лет), JS (24 года), Python (20 лет), Java (22 года), Go, Rust…

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

совсем другая лига

портфолио → http://kamilnowicki.com

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
😁34🤯172👍2
😅😅😅

👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
😁92🤔63