ScavioScavio
ProductoPreciosDocumentación
Iniciar sesionComenzar
  1. Inicio
  2. Tutoriales
  3. Cómo conectar a tierra un LLM con datos de repositorio de GitHub
Tutorial

Cómo conectar a tierra un LLM con datos de repositorio de GitHub

Ground LLM responde en contenido de repositorio real combinando la búsqueda de GitHub a través de operadores de sitios SERP con el punto final de búsqueda de Scavio.

Obtener clave API gratisDocumentacion API

Basar las respuestas de LLM en el código fuente supera las explicaciones alucinadas. Este tutorial utiliza el SERP de Scavio con site:github.com más su punto final de búsqueda para llevar el contenido del repositorio al bucle del agente sin una gran integración de la API de GitHub.

Requisitos previos

  • Python 3.10+
  • Una clave API de Scavio
  • Una clave API de LLM

Guia paso a paso

Paso 1: Buscar dentro de un repositorio a través de SERP

site:github.com/ORG/REPO la búsqueda con alcance encuentra rápidamente el archivo correcto.

Python
import requests, os
API_KEY = os.environ['SCAVIO_API_KEY']

def repo_search(repo, query):
    r = requests.post('https://api.scavio.dev/api/v1/search',
        headers={'x-api-key': API_KEY},
        json={'query': f'site:github.com/{repo} {query}', 'num_results': 10})
    return r.json().get('organic_results', [])

Paso 2: Obtener el archivo seleccionado

Las URL sin formato de GitHub funcionan con el punto final de búsqueda de Scavio.

Python
def fetch_raw(url):
    raw = url.replace('github.com', 'raw.githubusercontent.com').replace('/blob/', '/')
    r = requests.post('https://api.scavio.dev/api/v1/extract',
        headers={'x-api-key': API_KEY},
        json={'url': raw})
    return r.json().get('content', '')

Paso 3: Fundamenta la respuesta

Pase el contenido recuperado al mensaje LLM con la cita de la fuente.

Python
import anthropic
client = anthropic.Anthropic()

def grounded_answer(repo, question):
    hits = repo_search(repo, question)
    content = fetch_raw(hits[0]['link']) if hits else ''
    msg = client.messages.create(
        model='claude-sonnet-4-6',
        max_tokens=1024,
        messages=[{'role': 'user', 'content': f'{question}\n\nCONTEXT:\n{content[:4000]}'}])
    return msg.content[0].text

Paso 4: Agregar composición de varios archivos

Obtenga los 3 resultados principales, clasifique por relevancia y cree contexto.

Python
def multi_file_context(repo, question):
    hits = repo_search(repo, question)[:3]
    return '\n\n'.join([fetch_raw(h['link'])[:2000] for h in hits])

Paso 5: Validar citas

Asegúrese de que la respuesta de LLM mencione al menos una URL de origen.

Python
def has_citations(answer, urls):
    return any(u in answer for u in urls)

Ejemplo en Python

Python
import os, requests
API_KEY = os.environ['SCAVIO_API_KEY']

def repo_grounded(repo, question):
    r = requests.post('https://api.scavio.dev/api/v1/search',
        headers={'x-api-key': API_KEY},
        json={'query': f'site:github.com/{repo} {question}'})
    return r.json().get('organic_results', [])[:3]

print(repo_grounded('prisma/prisma', 'migrate.ts'))

Ejemplo en JavaScript

JavaScript
const API_KEY = process.env.SCAVIO_API_KEY;
export async function repoGrounded(repo, question) {
  const r = await fetch('https://api.scavio.dev/api/v1/search', {
    method: 'POST',
    headers: { 'x-api-key': API_KEY, 'Content-Type': 'application/json' },
    body: JSON.stringify({ query: `site:github.com/${repo} ${question}` })
  });
  return ((await r.json()).organic_results || []).slice(0, 3);
}

Salida esperada

JSON
LLM answers cite exact files and code paths in the target repo. Hallucination rate drops materially versus ungrounded answers.

Tutoriales relacionados

  • Cómo crear un agente de codificación con búsqueda de documentos y problemas de GitHub en tiempo real
  • Cómo convertir documentos API a Markdown para cursor
  • Cómo convertir un sitio web a Markdown listo para LLM

Preguntas frecuentes

La mayoria de los desarrolladores completan este tutorial en 15 a 30 minutos. Necesitaras una clave API de Scavio (el plan gratuito funciona) y un entorno de Python o JavaScript.

Python 3.10+. Una clave API de Scavio. Una clave API de LLM. Una clave API de Scavio te da 50 creditos gratuitos al registrarte.

Si. El plan gratuito incluye 50 creditos al registrarte, mas que suficiente para completar este tutorial y crear un prototipo funcional.

Scavio tiene un paquete nativo de LangChain (langchain-scavio), un servidor MCP y una API REST simple que funciona con cualquier cliente HTTP. Este tutorial usa the raw REST API, pero puedes adaptarlo al framework que prefieras.

Recursos relacionados

Workflow

Diario Local LLM Search Grounding Pipeline

Read more
Best Of

La mejor API de búsqueda web para LLM locales en 2026

Read more
Best Of

Las mejores herramientas de base de conocimientos personales para LLM locales en mayo de 2026

Read more
Solution

Usa busqueda para detectar y corregir respuestas erroneas de LLM

Read more
Solution

Respuestas terrestres de LLM con datos de búsqueda en tiempo real

Read more
Use Case

Noticias locales de LLM y base de búsqueda

Read more

Empieza a construir

Ground LLM responde en contenido de repositorio real combinando la búsqueda de GitHub a través de operadores de sitios SERP con el punto final de búsqueda de Scavio.

Obtener clave API gratuitaLeer la documentacion
ScavioScavio

API de busqueda en tiempo real para agentes de IA. Busca en todas las plataformas, no solo en Google.

Producto

  • Funciones
  • Precios
  • Panel
  • Afiliados

Desarrolladores

  • Documentacion
  • Referencia de API
  • Inicio rapido
  • Integracion MCP
  • Python SDK

Alternativas

  • Alternativa a Tavily
  • Alternativa a SerpAPI
  • Alternativa a Firecrawl
  • Alternativa a Exa

Herramientas

  • Formateador JSON
  • cURL a codigo
  • Contador de tokens
  • Todas las herramientas

© 2026 Scavio. Todos los derechos reservados.

Featured on TAAFT
Terminos de servicioPolitica de privacidad