Почему в моих сводках появляется диалог «Mondays»?

У меня в сводках появляется разговор «Mondays»:!

Я видел это в своих логах — похоже, это предназначено для того, чтобы помочь модели интерпретировать формат? Но это не должно становиться видимым для пользователей.

Такое поведение началось после двух изменений:

  1. Переход с sonnet 3.5 на haiku 3.5
  2. Удаление существующих сводок из таблицы ai_summaries с помощью AiSummary.destroy_all. Возможно, этого недостаточно?

Все ли сводки после перехода на Claude Haiku 3.5 выглядят так же?

1 лайк

Нет, примерно половина — около 5 из 10 сгенерированных резюме. Я пробовал вернуться к Sonnet, чтобы проверить, решит ли это проблему, но упираюсь в лимиты запросов, поэтому на характеристику этого может уйти некоторое время.

Можешь проверить весь запрос и ответ API по теме, где это произошло, и поделиться ими со мной? Эта информация будет в таблице ai_api_audit_logs.

2 лайка

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

1 лайк

Наше логирование в ai_api_audit_logs гарантировано: все успешные ответы записываются туда, и вы должны видеть весь промпт. Есть ли возможность запустить Data Explorer и просмотреть содержимое таблицы?

1 лайк

Я понимаю Mondays, когда упираюсь в лимит запросов у Anthropic, по крайней мере с Haiku. Я могу попытаться исправить лимит запросов, но было бы лучше, если бы система просто выдавала ошибку, а не отображала Mondays.

/logs:

Job exception: {"type":"error","error":{"type":"rate_limit_error","message":"Число токенов запроса превысило ваш лимит запросов в минуту (https://docs.anthropic.com/en/api/rate-limits); см. заголовки ответа для текущей нагрузки. Пожалуйста, сократите длину промпта или максимальное количество запрашиваемых токенов, или попробуйте позже. Вы также можете связаться с отделом продаж по адресу https://www.anthropic.com/contact-sales, чтобы обсудить варианты увеличения лимита запросов."}}

Запрос из ai_api_audit_logs. Я скрыл реальный контент пользователя:

{
  "model": "claude-3-haiku-20240307",
  "max_tokens": 3000,
  "messages": [
    {
      "role": "user",
      "content": "Вот посты внутри тегов XML <input></input>:\n\n<input>1) user1 сказал: Я люблю Mondays 2) user2 сказал: Я ненавижу Mondays</input>\n\nСоздайте краткое, связное резюме текста выше, сохраняя исходный язык."
    },
    {
      "role": "assistant",
      "content": "Два пользователя делятся своими чувствами по поводу Mondays. [user1](/t/-/11772/1) ненавидит их, а [user2](/t/-/11772/2) любит."
    },
    {
      "role": "user",
      "content": "Заголовок обсуждения: [redacted].\n\nВот посты внутри тегов XML <input>[redacted]</input>:\n\n<input></input>\n\nСоздайте краткое, связное резюме текста выше, сохраняя исходный язык."
    }
  ],
  "system": "Вы — продвинутый бот для суммирования, который генерирует краткие и связные резюме предоставленного текста.\n\n- Включайте только резюме, без дополнительных комментариев.\n- Вы понимаете и генерируете Markdown форума Discourse, включая ссылки, _курсив_, **жирный**.\n- Сохраняйте исходный язык текста, который вы суммируете.\n- Старайтесь, чтобы резюме не превышали 400 слов.\n- Каждый пост форматируется как \"<НОМЕР_ПОСТА>) <ИМЯ_ПОЛЬЗОВАТЕЛЯ> <СООБЩЕНИЕ>\"\n- Ссылайтесь на конкретные примечательные посты в формате [ИМЯ](/t/-/11772/НОМЕР_ПОСТА)\n  - Пример: ссылка на 3-й пост от sam: [sam](/t/-/11772/3)\n  - Пример: ссылка на 6-й пост от jane: [согласился с](/t/-/11772/6)\n  - Пример: ссылка на 13-й пост от joe: [#13](/t/-/11772/13)\n- При форматировании имён пользователей используйте либо @ИМЯ_ПОЛЬЗОВАТЕЛЯ, либо [ИМЯ_ПОЛЬЗОВАТЕЛЯ](/t/-/11772/НОМЕР_ПОСТА)"
}

Ответ из ai_api_audit_logs:

{
  "id": "msg_01QPVSmg93tu21WtPUvoNZ33",
  "type": "message",
  "role": "assistant",
  "model": "claude-3-haiku-20240307",
  "content": [
    {
      "type": "text",
      "text": "Резюме:\n\nДва пользователя делятся своими чувствами по поводу Mondays. [user1](/t/-/11772/1) любит их, а [user2](/t/-/11772/2) ненавидит."
    }
  ],
  "stop_reason": "end_turn",
  "stop_sequence": null,
  "usage": {
    "input_tokens": 7298,
    "output_tokens": 49
  }
}

При нажатии на кнопку «Суммировать» отображается следующее:

Это означает, что они возвращают ответ 200, когда вы достигаете ограничения скорости, вместо 429.

Это ошибка в их API. Можете ли вы открыть отчёт об ошибке у них?

1 лайк

Они хотят получить сетевой трафик, включая заголовки. Я не вижу, как это можно получить из моего браузера — ни нажатием кнопки «Суммировать», ни запуском Sidekiq-задачи.

Мы не ведем логирование этого, вам нужно воспроизвести отправку cURL с вашего сервера и передать её дальше.

1 лайк

Вы также можете предоставить им msg_01QPVSmg93tu21WtPUvoNZ33 — они могут найти его напрямую в своих логах.

3 лайка

Есть ли какие-либо новости от Anthropic с учётом идентификатора запроса, предоставленного Сэмом @markschmucker?

Если вы всё ещё ограничены по частоте запросов, попробуйте уменьшить размер партии для восполнения данных вдвое.

1 лайк

У них нет типичной системы тикетов поддержки — вместо этого вы общаетесь с ботом. Я сообщил об этой проблеме боту, включив идентификатор сообщения, предоставленный @sam. Бот поверил мне и пообещал передать информацию человеку, а также отправить мне письмо при обновлении статуса. Писем пока нет.

3 лайка

Сегодня я получил сообщение в чате от Anthropic, в котором просто спрашивали, продолжается ли это. Да, продолжается. Никакой обратной связи больше. Разочаровывающий опыт.

Ответ от Anthropic:

Здравствуйте,

К сожалению, на данный момент мне не удалось воспроизвести эту ошибку.

С наилучшими пожеланиями,
Райан

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

Discourse выполняет те же HTTP-запросы, что и cURL, поэтому их можно воспроизвести с точностью 100%.

Тем не менее, широко известно, что Anthropic испытывает трудности с удовлетворением растущего спроса, поэтому может быть проще поискать альтернативы: использовать Claude через AWS или Google Cloud, либо попробовать Gemini или другие API больших языковых моделей.