← Cloudflare Workers AI / workers-ai / guides / tutorials
Модель Llama 3.2 11B Vision Instruct в Cloudflare Workers AI
Предварительные требования
Прежде чем начать, убедитесь, что у вас есть следующее:
- A Аккаунт Cloudflare ↗ с включенными Workers и Workers AI.
- Ваш
CLOUDFLARE_ACCOUNT_IDиCLOUDFLARE_AUTH_TOKEN.- Вы можете создать API token в панели управления Cloudflare, в разделе API Tokens.
- Node.js, установленный для работы с Cloudflare Workers (необязательно, но рекомендуется).
1. Согласитесь с лицензией Meta
При первом использовании Llama 3.2 11B Vision Instruct модель, необходимо принять условия Meta's License and Acceptable Use Policy.
curl https://api.cloudflare.com/client/v4/accounts/$CLOUDFLARE_ACCOUNT_ID/ai/run/@cf/meta/llama-3.2-11b-vision-instruct \
-X POST \
-H "Authorization: Bearer $CLOUDFLARE_AUTH_TOKEN" \
-d '{ "prompt": "agree" }'Замените $CLOUDFLARE_ACCOUNT_ID и $CLOUDFLARE_AUTH_TOKEN вашими реальными идентификатором аккаунта и токеном.
2. Настройте свой Cloudflare Worker
-
Создание проекта Worker Вы создадите новый проект Worker с помощью
create-cloudflareCLI (C3). Этот инструмент упрощает настройку и развёртывание новых приложений в Cloudflare.Выполните следующую команду в терминале:
npm create cloudflare@latest -- llama-vision-tutorialДля настройки выберите следующие параметры:
- Для С чего вы хотите начать?, выберите
Hello World example. - Для Какой шаблон вы хотите использовать?, выберите
Worker only. - Для Какой язык вы хотите использовать?, выберите
JavaScript. - Для Хотите использовать git для контроля версий?, выберите
Yes. - Для Хотите развернуть приложение?, выберите
No(мы внесём некоторые изменения перед развёртыванием).
После завершения настройки будет создан новый каталог с именем llama-vision-tutorial будет создан.
-
Перейдите в каталог приложения Перейдите в каталог проекта:
cd llama-vision-tutorial -
Структура проекта Ваш
llama-vision-tutorialкаталог будет включать:- Worker «Hello World» по адресу
src/index.ts. - A
wrangler.jsonфайл конфигурации для управления настройками развёртывания.
- Worker «Hello World» по адресу
3. Написание кода Worker
Измените src/index.ts (или index.js если вы не используете TypeScript) файл и замените его содержимое следующим кодом:
export interface Env {
AI: Ai;
}
export default {
async fetch(request, env): Promise<Response> {
const messages = [
{ role: "system", content: "You are a helpful assistant." },
{ role: "user", content: "Describe the image I'm providing." },
];
// Replace this with your image data encoded as base64 or a URL
const imageBase64 = "data:image/png;base64,IMAGE_DATA_HERE";
const response = await env.AI.run("@cf/meta/llama-3.2-11b-vision-instruct", {
messages,
image: imageBase64,
});
return Response.json(response);
},
} satisfies ExportedHandler<Env>;4. Привязка Workers AI к вашему Worker
- Откройте конфигурационный файл Wrangler и добавьте следующую конфигурацию:
{
"env": {},
"ai": {
"binding": "AI"
}
}env = { }
[ai]
binding = "AI"- Сохраните файл.
5. Развёртывание Worker
Выполните следующую команду, чтобы развернуть Worker:
wrangler deploy6. Тестирование Worker
- После развёртывания вы получите уникальный URL-адрес для своего Worker (например,
https://llama-vision-tutorial.<your-subdomain>.workers.dev). - Используйте инструмент вроде
curlили Postman, чтобы отправить запрос вашему Worker:
curl -X POST https://llama-vision-tutorial.<your-subdomain>.workers.dev \
-d '{ "image": "BASE64_ENCODED_IMAGE" }'Замените BASE64_ENCODED_IMAGE реальной строкой изображения в кодировке base64.
7. Проверка ответа
Ответ будет включать вывод модели, например описание или ответ на ваш промпт на основе предоставленного изображения.
Пример ответа:
{
"result": "This is a golden retriever sitting in a grassy park."
}