Доказать развертывание по дайджесту, а не по тегу
Предыдущее обязательство останавливает «установленное изображение» как молчаливое бездействие. Это утверждает, что результат: после развертывания тег решается н...
Восстановление одного и того же обязательства ничего не привело к успеху
Изображение помечено фиксированным SHA, поэтому восстановление одного и того же фикса производит Идентичная ссылка на изображение. «Объектное заданное изображен...
Пускай выкатка закончит то, что делала старая подушка
Деплойты заменили единственный блок каждой службы, в котором не было ничего, чтобы поймать запросы. Полёт. Три настройки, применяемые по всему флоту: Престоп с...
Ссылка КБ переходит на статью с ее текстовыми названиями
Участник спросил, как настроить свою организацию и получил контрольный список настройки обратно, каждый Назовите статью, которая это объясняет. Все три ссылки у...
Ни один текст ошибки в верхнем потоке не доходит до участника, какой бы провайдер ни потерпел неудачу
членТекст Для провала, чтобы получить сообщение() для всего, что не было AiProviderException. Только адаптер HuggingFace классифицирует свои отказы; Каждый друг...
Откажитесь от модели, которую провайдер не будет маршрутизировать, и прекратите цитировать ее на участников
Продолжение исправления каталога маршрутизатора. Это останавливает неисправные модели. LISTED; это останавливает человека, уже находящегося в каталоге организац...
Перечислите модели Hugging Face, которые маршрутизатор действительно будет обслуживать
Чат переходит на маршрутизатор Inference Providers ****************, но модели спрашивают HUB для моделей, которые где-то «теплые» — разные и гораздо больше уст...
Удалить непроверенные непрочитанные конечные точки
В паре с камо-внутренним удалением ИИ непрочитанный значок: граф никогда не сообщал участнику о чем-либо действенном (никакой канал толчка не поддерживает его, ...
Размер капсулы над собственным потолком JVM (skip ci)
Изображение начинается с -XX:MaxRAMPercentage=70 -XX:+ Всегда прикасайтесь, поэтому Одна только куча может занять 70% от лимита контейнера, а предтач сохраняет ...
Управление моделями и использование чтения берут права, которые их называют
AiModelController и AiUsageController проверили право собственности на организацию. 403-е модели контроллера сравнивают с provider.getOrganizationId() орг сесси...
Объявите секрет хранения объектов, который ConfigMap больше не несет
Ключ MinIO был перенесен из ConfigMap в учетные данные мини-приложений секрет, но энв из этого снаряжения его применяли только вживую Развертывание — никогда не...
Прекратить доставку общих учетных данных в качестве конфигурационного по умолчанию
Общий пароль платформы был запечён в качестве запасного для DB PASSWORD и MINIO ROOT PASSWORD, так что он жил в этом репо и в построенном образе, а также В клас...
Сканирование общих репозиториев MFA
MfaEnrollmentService - это @Service в библиотеке, разделенной Камо, так что Wildcard @ComponentScan("com.kamo") в этом приложении строит его независимо от того,...
Укрепите загрузку kububl против шелушащегося выхода [skip ci]
dl.k8s.io по выходу бегуна периодически падает в середине передачи: Curl: (56) OpenSSL SSL read: расшифровка не удалась или не удалась который не справляется с ...
Классифицируйте сбои зрения, чтобы цикл повторного запуска и выключатель фактически работали
Две ошибки в видении завершены, обе из которых победили машины, созданные для их обработки. Ответ на пустой контент был возвращен в виде SUCCESS и завершил цик...
Никогда не направляйте зрение на адаптер, который не может отправить изображение
AiProvider.supportsVision - это отредактированный вручную флаг базы данных, и маршрутизация доверяла только ему. Адаптеры HuggingFace и Cohere вообще не читают ...
Anthropic удалил все системные сообщения, кроме последнего
buildRequestBody присваивается, а не аккумулируется системное поле, поэтому с большим количеством Но только одно системное сообщение доходило до модели. На прак...
Закрытые правила выживают после отмены раздела или полного документа
Автор, взявший на себя управление разделом правил вручную, заменил весь корпус раздела. который молча отбросил правила запертого пакета внутри него - так что ни...
Потоковые ответы были отброшены, сохраняя пустые сообщения помощников
Каждое успешное завершение чата возвращалось как пузырь помощника. The Помощники строк были сохранены с помощью content len=0 и is error=false. Отлаживать было ...
Попробуйте следующую модель, когда модель видения отвергает изображение
Проверка производства снова после исправления модальности, маршрутизация перешла от текста к речи модель до o3-mini — модель рассуждений серии o, которая также ...
Прекратите маршрутизацию видения для моделей текста в речь
Найден путем зондирования производства: вызовы видения 1188756624575266822, разрешенные для gpt-4o-mini-tts-2025-03-20 — модель TEXT-TO-SPEECH — так что каждый ...
Загрузите изображения истории с помощью запроса, а не ленивых getImages() (WS Path)
**************** Проходит по траектории WebSocket (называемой AiChatWebSocketHandler), который НЕ является HTTP-запросом, поэтому не применяется. Итерация загру...
Позволить SWITCH MODEL перезагрузить сеанс
handleSwitchModel всегда UUID-parsed modelId и по ошибке на нуле, поэтому сеанс Никогда нельзя было вернуться к автоматическому выбору модели в середине чата. П...
Надежный поставщик видения / выбор модели среди поставщиков
Двухпропускной выборVisionProvider: предпочтите любого провайдера, который имеет активную модель, способную видеть Адаптер уже испускает контент image url и отч...
Снижение порога RAG с 0,5 до 0,25 для прекращения фильтрации соответствующих результатов КБ
Порог 0,5 молча отбрасывал действительные результаты от модели встраивания. Особенно для доменного контента с меньшими 384-дим векторами.
Add response body and request logging to RagClient for debugging
Log the RAG search request URL, orgId, query, and response body on error to diagnose 500 responses from RAGService.
Use non-streaming chat completion for REST endpoint
Streaming over REST with blockLast() was producing empty responses because WebClient's SSE parsing doesn't work reliably with bodyToFlux(String.class). Added ha...
Add detailed error logging to HuggingFaceAdapter for debugging 400 errors
Captures and logs the actual HF error response body instead of just status code.
Switch HuggingFace to router.huggingface.co (api-inference is deprecated)
HF returns 410 on api-inference.huggingface.co with message to use router.huggingface.co instead.
Use HuggingFace OpenAI-compatible endpoint with model in request body
HF's /v1/chat/completions endpoint takes the model ID in the JSON body, not in the URL path. Switched from per-model URL routing to standard
Add model count to provider list, switch HF to router endpoint
- Include modelCount in provider list GET response - Switch Hugging Face default base URL to router.huggingface.co - Support both api-inference and router URL f...
Return full decrypted API key in provider responses
Users need to see and edit the full key, not a masked version.
Normalize base URL to prevent /v1/v1 duplication
Strips trailing /v1 from base URL before appending /v1/chat/completions, so users can enter base URLs with or without the /v1 suffix.
Restructure test connection to discover models first, handle rate limits gracefully
- Model discovery (lightweight GET) runs before chat test (POST) - Rate limit (429) errors show user-friendly warning instead of failing - Auth errors (401/403)...
Use provider-specific test model instead of hardcoded gpt-4o-mini
Each provider type now uses an appropriate model for connection testing
Serialize entity IDs as strings to prevent JavaScript precision loss
CockroachDB unique_rowid() generates INT8 values that exceed JavaScript's Number.MAX_SAFE_INTEGER, causing ID corruption in the frontend.
Add OTK authentication support matching SecurityService pattern
- Add OTKPreAuthFilter to validate X-OTK header and resolve to *** session - Update SessionHelper to read from request attributes set by filter - Update all con...
Как вы видите судоходство?
Каждое из этих обновлений автоматически попадает в ваше рабочее пространство. Начните бесплатно и смотрите, как он растет неделю за неделей.