INTEGRITY Документация

Добавление обратной связи от человека через API

Это руководство проведёт вас через шаги добавления обратной связи от человека к запросу AI Gateway с помощью Cloudflare API. Вы узнаете, как получать соответствующие логи запросов и отправлять отзывы через API.

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

1. Создание API-токена

  1. Создание API-токена со следующими разрешениями:
  1. Получите ваш Account ID.
  2. Используя этот API-токен и Account ID, отправьте POST запрос в Cloudflare API.

2. Получение cf-aig-log-id

cf-aig-log-id представляет собой уникальный идентификатор записи журнала, к которой вы хотите добавить отзыв. Ниже описаны два способа получить этот идентификатор.

Способ 1: найдите cf-aig-log-id в ответе на запрос

Этот метод позволяет напрямую находить cf-aig-log-id в заголовке ответа, возвращаемого AI Gateway. Это самый простой способ, если у вас есть доступ к исходному ответу API.

Порядок действий описан в шагах ниже.

  1. Отправка запроса в AI Gateway: Это может быть запрос, который ваше приложение отправляет в AI Gateway. После выполнения запроса ответ будет содержать различные метаданные.
  2. Проверьте заголовки ответа: Ответ будет включать заголовок с именем cf-aig-log-id. Это идентификатор, который понадобится вам, чтобы отправить отзыв.

В примере ниже cf-aig-log-id это 01JADMCQQQBWH3NXZ5GCRN98DP.

{
	"status": "success",
	"headers": {
		"cf-aig-log-id": "01JADMCQQQBWH3NXZ5GCRN98DP"
	},
	"data": {
		"response": "Sample response data"
	}
}

Способ 2: получите cf-aig-log-id через API (GET-запрос)

Если у вас нет cf-aig-log-id в теле ответа или вам нужно получить его позже, вы можете извлечь это значение, запросив журналы с помощью Cloudflare API.

Отправьте GET запрос, чтобы получить список журналов, а затем найти конкретный ID

Необходимые разрешения API-токена

Хотя бы одно из следующих права доступа токена требуется:
Получение списка логов шлюза
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/ai-gateway/gateways/$GATEWAY_ID/logs" \
	--request GET \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"
{
	"result": [
		{
			"id": "01JADMCQQQBWH3NXZ5GCRN98DP",
			"cached": true,
			"created_at": "2019-08-24T14:15:22Z",
			"custom_cost": true,
			"duration": 0,
			"id": "string",
			"metadata": "string",
			"model": "string",
			"model_type": "string",
			"path": "string",
			"provider": "string",
			"request_content_type": "string",
			"request_type": "string",
			"response_content_type": "string",
			"status_code": 0,
			"step": 0,
			"success": true,
			"tokens_in": 0,
			"tokens_out": 0
		}
	]
}

Способ 3: получите cf-aig-log-id через привязку

Вы также можете получить cf-aig-log-id с использованием привязки, что упрощает процесс. Вот как получить ID журнала напрямую:

const resp = await env.AI.run(
	"@cf/meta/llama-3-8b-instruct",
	{
		prompt: "tell me a joke",
	},
	{
		gateway: {
			id: "my_gateway_id",
		},
	},
);

const myLogId = env.AI.aiGatewayLogId;

3. Отправка отзыва через PATCH-запрос

Когда у вас будут API-токен и cf-aig-log-id, вы можете отправить запрос PATCH, чтобы предоставить обратную связь.

Необходимые разрешения API-токена

Хотя бы одно из следующих права доступа токена требуется:
Patch Gateway Log
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/ai-gateway/gateways/$GATEWAY_ID/logs/$ID" \
	--request PATCH \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
	--json '{
		"feedback": 1
	}'

Если отзыв был отрицательным, измените тело запроса на -1.

{
	"feedback": -1
}

4. Проверка отправки отзыва

Отправку отзыва можно проверить двумя способами: