Asistente de recomendaciones de productos basado en Claude para tus sitios de comercio electrónico turcos: entiende consultas en lenguaje natural de clientes como "si hace sol en verano, voy a la playa, ¿qué puedo comprar sin superar 1000 TL?" y recomienda productos reales del catálogo. Código completo + cálculo del coste mensual + IVA + estrategia frente a las fluctuaciones del tipo de cambio de la lira turca.
¿Por qué Claude Haiku 4.5?
En tareas de tipo "entender + dar formato", como la recomendación de productos, Claude Haiku 4.5 ofrece aproximadamente el 85 % de la calidad de Sonnet 4.6 por un tercio del coste. Con los precios de Kunavo:
- Haiku 4.5: entrada $0.40/1M, salida $2.00/1M
- Sonnet 4.6: entrada $1.20/1M, salida $6.00/1M
Catálogo de 200 productos + consulta del cliente = ~3K tokens de entrada, respuesta JSON = ~200 tokens de salida. Coste por llamada: ~$0.0016 (aproximadamente ₺0.06).
Código funcional
import json
from openai import OpenAI
client = OpenAI(
api_key="sk-kn-...",
base_url="https://api.kunavo.com/v1",
)
# Claude, json_schema tipindeki response_format'a uyar; json_object garanti edilmez.
ONERI = {
"type": "object",
"properties": {
"oneriler": {"type": "array", "items": {
"type": "object",
"properties": {"urun_id": {"type": "string"}, "neden": {"type": "string"}},
"required": ["urun_id", "neden"],
"additionalProperties": False,
}},
"toplam_oneri": {"type": "integer"},
},
"required": ["oneriler", "toplam_oneri"],
"additionalProperties": False,
}
def urun_oneri(kullanici_sorgusu: str, urun_katalogu: list[dict]) -> dict:
"""Müşterinin doğal dil sorgusuna göre 3-5 ürün önerir."""
katalog_metni = "\n".join(
f"- {u['id']}: {u['baslik']} | {u['kategori']} | {u['fiyat']} TL"
for u in urun_katalogu[:200]
)
resp = client.chat.completions.create(
model="claude-haiku-4-5", # Hızlı + ucuz, ürün önerisi için yeterli
messages=[
{
"role": "system",
"content": [
{
"type": "text",
"text": (
"Sen bir Türk e-ticaret asistanısın. "
"Türkçe doğal konuş, samimi ama saygılı. "
"Cevap formatı JSON: "
'{"oneriler": [{"urun_id": "...", "neden": "..."}, ...], '
'"toplam_oneri": int}'
),
"cache_control": {"type": "ephemeral"},
},
],
},
{
"role": "user",
"content": (
f"## Müşteri sorgusu\n{kullanici_sorgusu}\n\n"
f"## Mevcut katalog\n{katalog_metni}"
),
},
],
response_format={"type": "json_schema",
"json_schema": {"name": "oneri", "schema": ONERI}},
max_tokens=400,
)
return json.loads(resp.choices[0].message.content)Marcamos el prompt del sistema con cache_control. Cuando llegan llamadas consecutivas con el mismo prompt, se activa el almacenamiento en caché de prompts de Anthropic y se ahorra el 90 % del coste de entrada.
Proyección del coste mensual
| Recomendaciones diarias | USD mensuales | TL aproximadas |
|---|---|---|
| 1.000 | ~$48 | ~₺1.700 |
| 10.000 | ~$480 | ~₺17.000 |
| 100.000 | ~$4.800 | ~₺170.000 |
Comparación: mantener continuamente un asistente de comercio electrónico con personal requiere un equipo de soporte de al menos 2-3 turnos para 1.000 recomendaciones diarias o más (~₺120.000/mes). Con IA, se ahorra un 95 % del coste.
Estrategia frente a las fluctuaciones del tipo de cambio de la lira turca
Como Kunavo utiliza precios en USD, el coste aumenta a medida que la lira turca pierde valor. Para suavizarlo:
- Recargas grandes: las recargas de $1.000 o más activan un crédito adicional del 20 % ($1.000 depositados, $1.200 de crédito). Ahorro aproximado del 17 % en USD, con un colchón cambiario indirecto en TRY
- El almacenamiento en caché de prompts siempre está activado y libera un ahorro del 70 %
- Segmentación Haiku → Sonnet: resuelve las consultas sencillas con Haiku y las complejas con Sonnet. Si necesitas un decisor automático, consulta la guía de optimización de costes
- Limita la salida: establece max_tokens=300 para reducir a la mitad el coste de salida
Solución a los problemas con las tarjetas
La mayoría de los bancos turcos mantienen desactivadas por defecto las operaciones online en el extranjero. Si Stripe rechaza el pago:
- Pide a tu banco que habilite el permiso de "uso online de tarjetas en el extranjero"
- Se admiten Visa, Mastercard, American Express y JCB
- Apple Pay puede funcionar sin problemas; si está configurado en Chrome / Android, también puedes seleccionar Google Pay, pero la tarjeta subyacente debe seguir habilitada para operaciones internacionales
Cumplimiento de KVKK
Si hay datos personales del cliente (nombre, teléfono, dirección), anonimízalos antes de enviarlos al LLM. Los datos de pago de Stripe ya están cubiertos por PCI-DSS y permanecen fuera de tu entorno. Kunavo no ofrece un acuerdo de procesamiento de datos (DPA); las solicitudes se procesan en EE. UU. y se envían a proveedores de modelos upstream. Si necesitas un DPA, firma un contrato directamente con el proveedor del modelo (las condiciones empresariales de Anthropic, OpenAI o Google).
Lista de comprobación para producción
- Revisa manualmente las primeras 100 recomendaciones y automatiza cuando la calidad sea ≥80 %
- Configura el límite de gasto diario en /app/keys (evita aumentos accidentales)
- Para las cargas útiles de error, añade un comportamiento alternativo que muestre al usuario "lo siento, no puedo hacer recomendaciones en este momento"
- Supervisa el coste mensualmente en /app/usage y configura una alerta ante aumentos inesperados
Para empezar, regístrate gratis, carga desde $10 y paga solo por lo que utilices. La documentación completa está en /docs/quickstart.