Crecimiento / JevModel

Búsqueda de personas con IA y Jev: filtra candidatos por tu ICP antes de pagar por buscar emails

Un flujo de búsqueda de personas con IA que primero filtra y luego enriquece: un agente encuentra candidatos, Jev evalúa a cada uno frente a tu perfil de cliente ideal (ICP) con preguntas Noul, Score y Choice, y solo quienes pasan van a un buscador de emails de trabajo como Treg. Incluye un ejemplo de ICP para copiar, un script de filtrado en Node, los precios publicados por Treg y su comparación con Clay con fuentes, y cómo medir el coste por lead útil.

Última actualización:

Respuesta breve: buscar, juzgar y solo entonces pagar por enriquecer

  • El orden importa: deja que el agente busque, que Jev juzgue a cada candidato frente a tu ICP y solo entonces paga a un buscador de emails como Treg por las personas que pasaron. Jev no busca en la web ni encuentra emails; lee los campos que envías y devuelve probabilidades para preguntas tipadas.
  • Escribe el ICP como una pregunta Noul de encaje, un Score de poder de compra y un Choice con el motivo de rechazo. El state cabe en 8.000 caracteres, una petición hace 1–8 preguntas, un Choice tiene 2–12 opciones y un Score 2–10 niveles. Cada candidato es una petición normal a la API cobrada en tokens; las cuentas verificadas empiezan con 100.000 tokens gratis, y las listas pueden ir por Console → Batch (50 filas por lote antes de comprar, 1.000 después).
  • Las cifras de Treg son suyas: búsqueda de email desde $0,0005 por llamada y sin cobro si no encuentra, $1,00 de crédito gratis para cuentas nuevas verificadas, “85% más barato que Clay” según su propia prueba de 100 leads, y un recibo de ejecución publicado de $0,029 por email útil verificado. Mide tu propio coste por contacto útil y dentro del ICP antes de escalar.

¿Qué es la búsqueda de personas con IA y por qué filtrar antes de enriquecer?

La búsqueda de personas con IA consiste en que un agente convierta un encargo en lenguaje natural, como “responsables de marketing en empresas de software Serie A de Norteamérica”, en una lista de personas con nombre, cargo y empresa. La lista nunca sale limpia: la búsqueda devuelve cargos parecidos, empresas fuera de tu rango de tamaño, regiones donde no vendes y perfiles desactualizados. Si cada fila va directa a un buscador de emails de trabajo, pagas búsquedas de personas a las que nunca contactarás, y contactos que no encajan llegan a tu herramienta de outreach. El orden más barato es filtrar y luego enriquecer. El agente busca; Jev responde unas pocas preguntas cortas y tipadas sobre cada candidato frente a tu perfil de cliente ideal (ICP); solo los que pasan van a una herramienta de lead enrichment como Treg para buscar y verificar el email. Jev no navega, no busca ni encuentra emails. Es una capa de juicio solo de texto: lee los campos que envías y devuelve probabilidades, de modo que el paso de pago solo ve filas que ya quieres. Este es el patrón “jev people search” de principio a fin, y encaja junto al lead scoring para leads entrantes y al agent routing para agentes de varios pasos.

Score leads on a useful rubricRoute an agent’s next stepChoice, Score, and Noul

Paso 1: ¿cómo conviertes un ICP en preguntas de Jev?

Divide el ICP en tres preguntas en lugar de un prompt largo. Una pregunta Noul toma la decisión de conservar o descartar (¿encaja esta persona?). Un Score de 2 a 10 niveles ordenados mide lo cerca que está la persona de quien controla el presupuesto. Un Choice de 2 a 12 opciones nombra el motivo principal por el que un candidato no pasa, e incluye siempre una opción unclear para que los perfiles escasos tengan un destino honesto. El motivo compensa la pregunta extra: si la mayoría de rechazos vuelve como wrong_company_size, corrige el encargo de búsqueda en lugar de pagar cada día por rechazar las mismas filas. Pon en state solo los campos que necesita la decisión: cargo, empresa, rango de tamaño, sector, región y un resumen de perfil de una línea. Deja fuera emails, teléfonos, notas y cualquier dato sensible, y nunca preguntes por edad, género, etnia u otros rasgos protegidos. El state debe caber en 8.000 caracteres, una petición puede hacer de 1 a 8 preguntas, y los IDs de pregunta empiezan por minúscula y solo usan minúsculas, dígitos y guiones bajos. El bloque de abajo es un ejemplo de ICP para copiar: un candidato como state, las tres preguntas, una respuesta ilustrativa y cuatro candidatos de prueba con el resultado esperado. El Jev Playground público en jevmodel.app/jev-playground permite probar los ejemplos integrados sin cuenta (3 ejecuciones por día UTC); para ejecutar estas tres preguntas tal cual, inicia sesión, abre Console → Playground, pega el state y añade las preguntas, o envía el mismo cuerpo a la API.

Choice, Score, and NoulScore leads on a useful rubricJevModel API: request and response
// Copy-paste ICP screen. POST https://jevmodel.app/api/v1/systemone
// Header: Authorization: Bearer <JEVMODEL_API_KEY>  (key from a verified-email account)
{
  "state": {
    "title": "Head of Growth Marketing",
    "company": "Example Analytics Inc.",
    "company_size": "120 employees",
    "industry": "B2B SaaS, product analytics",
    "region": "Toronto, Canada",
    "summary": "Runs paid acquisition and lifecycle email; reports to the CEO."
  },
  "questions": {
    "icp_fit": {
      "type": "noul",
      "instructions": "Does this person match our ICP: someone who owns or directly influences the marketing budget at a B2B software company with 50-500 employees in the US or Canada?",
      "criteria": {
        "true": "Owns or directly influences marketing spend at a B2B software company of 50-500 people in the US or Canada.",
        "false": "Wrong role, company type, size or region, or not enough information to tell."
      }
    },
    "buying_power": {
      "type": "score",
      "instructions": "Rate how close this person is to the marketing budget decision.",
      "criteria": [
        "Individual contributor with no budget",
        "Manages one marketing channel",
        "Leads a marketing function",
        "VP, CMO or founder who signs marketing spend"
      ]
    },
    "reject_reason": {
      "type": "choice",
      "instructions": "What is the main reason this person does or does not fit the ICP above?",
      "criteria": {
        "fit": "Matches role, company type, size and region.",
        "wrong_role": "Not in marketing or has no say over marketing spend.",
        "wrong_company_size": "Company is outside 50-500 employees.",
        "wrong_industry": "Company is not a B2B software business.",
        "wrong_region": "Based outside the US and Canada.",
        "unclear": "The profile does not give enough information to decide."
      }
    }
  }
}

// Illustrative response shape (example values, not measurements):
// { "code": 0, "data": { "answers": {
//   "icp_fit":       { "noul": 0.9 },
//   "buying_power":  { "score": ... },   // check the returned scale on real responses
//   "reject_reason": { "choice": "fit", "probabilities": { "fit": 0.86, ... } } } } }

// Four test candidates (one request each) and the outcome to expect:
// 1. Head of Growth Marketing, 120-person B2B SaaS, Toronto    -> keep (fit)
// 2. Marketing intern, 120-person B2B SaaS, Austin             -> drop (wrong_role)
// 3. CMO, 8,000-person retail bank, New York                   -> drop (wrong_company_size / wrong_industry)
// 4. VP Marketing, 200-person B2B software company, Berlin     -> drop (wrong_region)

Paso 2: ¿cómo ejecutas el filtro de ICP sobre toda la lista?

Envía una petición por candidato con las mismas tres preguntas y aplica los umbrales en tu propio código. El script de abajo lee candidates.json (un array de objetos con la forma del state anterior) e icp-questions.json (el objeto questions del Paso 1), llama a la API, conserva las filas donde icp_fit es al menos 0,8 y el motivo es fit, y manda las filas unclear o dudosas a un archivo de revisión en lugar de adivinar. El umbral 0,8 es provisional: elige el tuyo con una muestra etiquetada, como explica la guía de evaluación. Cada llamada es una petición normal a la API cobrada en tokens, así que el filtro cuesta lo mismo por fila pase o no la persona; las cuentas verificadas empiezan con 100.000 tokens gratis y las ejecuciones fallidas se reembolsan. La API no tiene clave de idempotencia, así que registra qué filas ya tienen respuesta antes de reintentar tras un error de red. Si prefieres no programar, Console → Batch ejecuta las mismas preguntas sobre una lista CSV o JSONL: hasta 50 filas por lote antes de cualquier compra y hasta 1.000 después.

JevModel API: request and responseBatch text classification with the JevModel APIJevModel pricing and free Jev runs
// screen.mjs  (Node 18+: built-in fetch)
// Usage: JEVMODEL_API_KEY=... node screen.mjs
import { readFileSync, writeFileSync } from 'node:fs';

const candidates = JSON.parse(readFileSync('candidates.json', 'utf8'));
const questions = JSON.parse(readFileSync('icp-questions.json', 'utf8'));
const FIT_THRESHOLD = 0.8; // placeholder: set it from a labeled sample

const shortlist = [];
const review = [];

for (const person of candidates) {
  const res = await fetch('https://jevmodel.app/api/v1/systemone', {
    method: 'POST',
    headers: {
      Authorization: 'Bearer ' + process.env.JEVMODEL_API_KEY,
      'Content-Type': 'application/json',
    },
    body: JSON.stringify({ state: person, questions }),
  });
  const json = await res.json();
  if (json.code !== 0) {
    review.push({ person, error: json });
    continue;
  }
  const a = json.data.answers;
  const fit = a.icp_fit.noul; // probability that the candidate fits
  const reason = a.reject_reason.choice;
  if (fit >= FIT_THRESHOLD && reason === 'fit') {
    shortlist.push({ ...person, fit, buying_power: a.buying_power.score });
  } else if (reason === 'unclear' || (fit > 0.4 && fit < FIT_THRESHOLD)) {
    review.push({ person, fit, reason });
  }
  // everything else is a confident reject: no paid lookup
}

writeFileSync('shortlist.json', JSON.stringify(shortlist, null, 2));
writeFileSync('review.json', JSON.stringify(review, null, 2));
console.log('shortlist', shortlist.length, 'review', review.length, 'of', candidates.length);

Paso 3: ¿cómo envías solo la lista corta a Treg para buscar emails?

Treg describe su búsqueda de personas como lead enrichment para agentes: un token y una CLI delante de muchos proveedores de datos, con pago por llamada. El agente elige un proveedor del catálogo o llama a un endpoint enrutado, donde Treg elige el proveedor y lo nombra. Llamas al servicio alojado en treg.to; esta guía no cubre ejecutar Treg por tu cuenta. Según el README de Treg, el agente instala la CLI, inicia sesión, busca una capacidad en el catálogo, lee su schema y la llama; encontrar emails de trabajo es una capacidad enrutada (treg.people.email.find) y la verificación es un paso aparte que se cobra por separado. Treg afirma que buscar un email desde la URL de un perfil de LinkedIn cuesta desde $0,0005 por llamada y que no cobra si no lo encuentra, por eso se le busca a menudo como linkedin email finder; revisa su lista de precios antes de presupuestar, porque varían según la ruta. Treg también dice que las cuentas nuevas verificadas reciben una vez $1,00 de crédito gratis al crear un equipo elegible. Pásale solo shortlist.json. Las filas de review.json esperan a una persona y los rechazos seguros nunca llegan a una búsqueda de pago. Guarda las respuestas de Jev junto a cada contacto para ver después si los de buying_power alto respondieron de verdad. El repositorio de Treg se publica bajo Apache 2.0 con términos adicionales; Treg dice que llamar a la API alojada de treg.to está permitido. JevModel no está afiliado a Treg.

Route an agent’s next stepScore leads on a useful rubric
# Treg CLI, as documented in Treg's README (hosted service at treg.to)
curl -fsSL https://treg.to/install.sh | sh
treg login
treg catalog search "find a work email"
treg catalog get treg.people.email.find   # read the input schema before calling
treg balance

# Pass only the rows in shortlist.json produced in Step 2.
# Rows in review.json go to a person; confident rejects are never looked up.
# Verification is a separate, separately billed step in Treg's docs.

¿Alternativa a Clay o a Apollo? Cómo se compara filtrar y luego enriquecer

Quien busca alternativas a Clay (clay alternatives) o una alternativa a Apollo (apollo alternative) suele querer dos cosas: menor coste por contacto y menos tiempo con contactos que nunca encajan. La tabla compara tres formas de crear una lista; describe compromisos, no un benchmark. En precio de proveedor, las únicas cifras públicas aquí son las de Treg: en una prueba que Treg publicó, los mismos 100 leads (nombre más dominio de empresa) pasaron por cinco herramientas de email de trabajo y se cotejaron con la dirección publicada de cada empresa. Treg informa de 92 emails correctos por $0,53, Clay 84 por unos $3,35, Apollo 77 por unos $2,24, Deepline 80 por $2,74 y Hunter 84 por $2,21, es decir $0,58 por cada 100 emails correctos para Treg frente a $3,77 para Clay, de ahí su afirmación de “85% más barato que Clay”. Son cifras de un proveedor sobre su propia prueba; Jev no participó y tu lista dará otros resultados. Filtrar primero baja el coste con cualquier proveedor de enrichment, porque menos filas llegan al paso de pago.

Score leads on a useful rubricAI Decision Flows with Jev and human review
¿Alternativa a Clay o a Apollo? Cómo se compara filtrar y luego enriquecer
PreguntaEnriquecer a todos los que devuelve la búsquedaFiltro de ICP con Jev y luego enriquecerRevisión manual y luego enriquecer
Quién recibe una búsqueda de pagoTodas las filas, también las que no encajanFilas que superan tu umbral; las unclear esperan revisiónFilas que aprobó una persona
Principal costeBúsquedas de personas que nunca contactasTokens de Jev por fila más búsquedas de la lista cortaTiempo del revisor en cada fila
Dónde vive el juicio de ICPEn ningún sitio, o en limpieza manual posteriorPreguntas escritas y umbrales que puedes versionar y probarEn la cabeza de cada revisor
Ideal paraListas pequeñas y ya segmentadasListas creadas por agentes a escala con un ICP escritoCuentas de alto valor donde cada contacto cuenta

¿Cómo mides la precisión y el coste real por lead útil?

Antes de confiar en el filtro, etiqueta 100–200 candidatos de tus propias búsquedas como encaja o no encaja, ejecuta las tres preguntas y mira cuántos que sí encajan quedan por debajo del umbral y cuántos que no encajan pasan. Luego sigue un solo número de principio a fin: gasto total (tokens de Jev más búsquedas más verificación) dividido entre contactos que están en tu ICP y tienen email verificado. Treg publica un recibo de una ejecución de este tipo, con fecha 2026-09-23: listó 50 empresas de software Serie A, dejó que Jev conservara las 27 que encajaban con el ICP, identificó al responsable de marketing de cada una y luego encontró y verificó emails de trabajo, con 20 emails verificados por $0,58 en total, o $0,029 por resultado útil, y cada fallo liquidado a $0,00. Es la ejecución publicada por Treg, no una medición de JevModel. Sobre calidad de búsqueda, Treg informa que en el People Search Bench de LessieAI las tareas de prospección B2B se resolvieron bien un 43% de las veces con Claude Code solo y un 78,2% con Treg. Lo que importa es tu propia muestra etiquetada.

Evaluate a Jev workflowJev probability, confidence and human-review thresholds

¿Cuándo usar este patrón y qué debes dejar fuera?

Úsalo cuando un agente crea listas a escala, el ICP se puede escribir en pocas frases y el paso de enrichment cuesta dinero por fila. No lo uses para un puñado de cuentas concretas, donde leer cada perfil tú mismo es más rápido. Mantén el filtro estrecho: juzga cargo, empresa, tamaño, sector y región a partir de datos profesionales, nunca de rasgos protegidos, y no envíes emails personales ni teléfonos a Jev, porque no los necesita. Sigue las normas de privacidad y de outreach que apliquen donde viven tus contactos. Jev es solo de texto y no es de código abierto; JevModel siempre llama al modelo Jev a través de su propia API, así que no hay campo model que configurar. La sección Crecimiento de jevmodel.app/use-cases tiene ejemplos de cualificación de leads, y jevmodel.app/jev-api recoge los límites de las peticiones. JevModel es un sitio independiente y no está afiliado a TypeSafe AI, que desarrolla Jev, ni a Treg.

Route an agent’s next stepAI Decision Flows with Jev and human reviewScore leads on a useful rubric

Preguntas frecuentes

¿Qué es “jev people search”?

Es el patrón de esta guía: un agente o una herramienta de búsqueda de personas encuentra candidatos, Jev juzga a cada uno frente a tu ICP escrito con preguntas tipadas, y solo quienes pasan van a una búsqueda de email de pago. Jev no busca personas ni encuentra emails.

¿Es una alternativa a Clay o a Apollo?

En parte. Jev sustituye el paso de juicio (¿encaja esta persona?), no la base de contactos. Sigues necesitando una fuente de búsqueda y un buscador de emails; Treg es una opción que publica su propia comparación con Clay. Muchos equipos mantienen sus herramientas y añaden el filtro antes de la búsqueda de pago.

¿JevModel forma parte de Treg o de TypeSafe AI?

No. JevModel es un sitio independiente que da acceso al modelo Jev. TypeSafe AI desarrolla Jev; Treg es un servicio aparte de búsqueda y enrichment de personas en treg.to. JevModel no está afiliado a ninguno.

¿Cuánto cuesta el filtro de ICP?

Cada candidato es una petición a la API cobrada en tokens, así que el coste depende de la longitud del state y las preguntas. Las cuentas verificadas empiezan con 100.000 tokens gratis, las ejecuciones fallidas se reembolsan y los paquetes actuales están en la página de precios de JevModel. Las búsquedas de email las cobra aparte el proveedor de enrichment.

¿Puede Jev funcionar como linkedin email finder?

No. Jev no visita LinkedIn ni busca direcciones. Decide si un perfil que ya tienes merece una búsqueda. Treg afirma que su búsqueda de email cuesta desde $0,0005 por llamada a partir de la URL de un perfil de LinkedIn; respeta los términos de cada plataforma al recopilar datos de perfiles.

JevModel es independiente y no está afiliado a TypeSafe AI.