@photosho

Как загрузить файл через API в диалог Claude?

Кто работал с Claude 3 API, подскажите, как отправлять ему файл. Видел в интернете, что файл отправляют в диалог текстом ("file_get_contents" или в base64), но это, во-первых, долго, а также, при такой отправке быстро превышается максимальное количество токенов в истории. Ссылки на скачивание файла он получать не хочет - жалуется, что не может скачать и просит "загрузить файл в диалог напрямую". Какие есть варианты "загрузить напрямую" с использованием API?
  • Вопрос задан
  • 116 просмотров
Решения вопроса 1
@rPman
превышается максимальное количество токенов

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

Человек точно так же не сможет переварить за один раз большой объем информации, llm-ки тут наследовали эту ограниченность и невнимательность.

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

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

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

Метод/класс/файл это не 'или', собирать информацию нужно параллельно на всех уровнях.

Можно итеративно задавать ИИ вопросы, добавив, информацию о каком методе/классе/файле необходимо для ответа на вопрос, замена этот уменьшенный кусок на исходный файл. Речь не идёт о непрерывном чате, внутри каждый запрос это полное окно контекста и лучше самому выбрать, что именно в него должно попасть, т.е. каждый раз формируется новый запрос .. но так как облачные ИИ стали добавлять управление кешем, можно создать несколько сессий, одни собирают информацию по частям, задавая разные вопросы к одному и тому же стартовому контексту, другие работают с агрегированной информацией, третьим с человеком...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы