Cómo acceder a Qwen 2 7B mediante API o localmente: una guía completa

Cómo acceder a Qwen 2 7B mediante API o localmente: una guía completa

Aspectos destacados

Rendimiento avanzado
Qwen 2-7B está basado en una arquitectura transformer con características avanzadas como activación SwiGLU, sesgo QKV de atención y Atención de consulta agrupada (GQA) para una inferencia más rápida y menor uso de memoria. Admite una longitud de contexto de hasta 131,072 tokens, lo que lo hace ideal para tareas de contexto largo.

Cómo acceder a Qwen 2-7B localmente
El acceso local requiere GPUs de alto rendimiento (p. ej., NVIDIA RTX 4080 Super) con un mínimo de 15.4 GB de VRAM.

Cómo acceder a Qwen 2-7B mediante API
Plataformas como Novita AI ofrecen una configuración sencilla, eliminando la necesidad de hardware.

Recomendaciones de uso
El acceso local es adecuado para investigadores que necesitan control total, mientras que el acceso mediante API es ideal para desarrolladores y empresas que buscan un despliegue rápido y facilidad de uso.

Qwen 2-7B es un modelo de lenguaje rentable optimizado para el rendimiento, ideal para aplicaciones como comprensión del lenguaje natural y generación de código.

¿Qué es Qwen 2 7B?

Qwen 2 - 7B es un modelo de última generación en la serie Qwen, basado en una arquitectura transformer. Forma parte de una serie de modelos de lenguaje que van desde 0.5 hasta 72 mil millones de parámetros, siendo Qwen 2-7B-Instruct una variante ajustada y optimizada para instrucciones.

Características clave

  • Arquitectura Transformer: Incorpora activación SwiGLU, sesgo QKV de atención y atención de consulta agrupada.
  • Tokenizador: Tokenizador mejorado capaz de manejar múltiples lenguajes naturales y código de programación.
  • Entrenamiento: Preentrenado en conjuntos de datos extensos y refinado mediante ajuste fino supervisado y optimización directa de preferencias.
  • Longitud de contexto: Admite hasta 131,072 tokens para tareas de contexto largo.
  • Soporte de idiomas: Destaca en inglés y chino, con soporte adicional para otros idiomas.

https://youtu.be/EG3IFDnYQkA

Puntos de referencia

benchmark de qwen 2

fuente de LLM EXPLORER

Qwen2.5-7B Instruct:

  • Mejor rendimiento general, líder en MMLU Pro, MUSR, IFEval y MATH Nivel 5.
  • Logra una mejora significativa en razonamiento matemático (MATH Nivel 5: 50).

Qwen2-7B Instruct:

  • Mejor rendimiento en GPQA y BBH.
  • Un modelo completo, pero ligeramente detrás de Qwen2.5-7B en la mayoría de las otras métricas.

DeepSeek R1 Distill Qwen-7B:

  • Rendimiento más bajo en todos los puntos de referencia.
  • Adecuado para tareas ligeras, pero muy por detrás de los modelos Qwen2 en puntos de referencia complejos.

Comparación con otros modelos Qwen

La serie Qwen 2 incluye modelos base y ajustados por instrucciones en cinco tamaños: Qwen2-0.5B, Qwen2-1.5B, Qwen2-7B, Qwen2-57B-A14B y Qwen2-72B. A continuación se muestra un resumen de la información clave de estos modelos:

qwen2

De Qwen

1. Atención de consulta agrupada (GQA)

  • Todos los modelos (Qwen2-0.5B, Qwen2-7B, Qwen2-57B, Qwen2-72B) adoptan GQA, lo que ofrece:
    • Velocidad de inferencia más rápida.
    • Menor uso de memoria.
  • Esta es una mejora significativa en comparación con Qwen1.5, donde solo los modelos grandes (32B y 110B) usaban GQA.

2. Longitud de contexto

  • Modelos base (Qwen2-0.5B, Qwen2-7B, Qwen2-57B, Qwen2-72B):

    • Preentrenados con una longitud de contexto de 32K tokens.
    • Demuestran fuertes capacidades de extrapolación de hasta 128K tokens según la evaluación de perplejidad (PPL).
  • Modelos ajustados por instrucciones (Qwen2-7B-Instruct, Qwen2-72B-Instruct):

    • Evaluados utilizando tareas como “Aguja en un pajar”.
    • Funcionan excepcionalmente bien en tareas de contexto largo, con capacidades que se extienden hasta 128K tokens, especialmente cuando se aumentan con YARN.

3. Capacidades multilingües

  • Todos los modelos (Qwen2-0.5B, Qwen2-7B, Qwen2-57B, Qwen2-72B):

    • Se benefician de conjuntos de datos de preentrenamiento mejorados que incluyen 27 idiomas adicionales además del inglés y el chino.
    • El rendimiento multilingüe mejora con el tamaño del modelo, y los modelos más grandes (Qwen2-57B, Qwen2-72B) destacan en tareas multilingües más complejas.

Si deseas ver una comparación de parámetros más detallada con otros modelos como Qwen 2.5 72B, puedes consultar este artículo: Qwen 2.5 72b vs Llama 3.3 70b: ¿Qué modelo se adapta a tus necesidades? ; Qwen 2.5 vs Llama 3.2 90B: Un análisis comparativo de las capacidades de razonamiento de código e imagen.

Cómo acceder a Qwen 2 7B localmente

Recomendaciones de GPU

Modelo Capacidad de VRAM Tipo de memoria Rendimiento relativo Rango de precio
NVIDIA RTX 4080 Super 16 GB GDDR6X Alto ⭐⭐⭐⭐⭐ (Gama alta)
AMD RX 7900 XTX 24 GB GDDR6 Alto ⭐⭐⭐⭐⭐ (Gama alta)
NVIDIA RTX 4070 Ti Super 16 GB GDDR6X Medio-Alto ⭐⭐⭐⭐ (Gama media-alta)
AMD RX 7600 XT 16 GB GDDR6 Medio ⭐⭐⭐ (Gama media)
NVIDIA RTX 4060 Ti (16GB) 16 GB GDDR6 Medio ⭐⭐⭐ (Gama media)

Inicio rápido

from transformers import AutoModelForCausalLM, AutoTokenizer
device = "cuda" # the device to load the model onto

model = AutoModelForCausalLM.from_pretrained(
    "Qwen/Qwen2-7B-Instruct",
    torch_dtype="auto",
    device_map="auto"
)
tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen2-7B-Instruct")

prompt = "Give me a short introduction to large language model."
messages = [
    {"role": "system", "content": "You are a helpful assistant."},
    {"role": "user", "content": prompt}
]
text = tokenizer.apply_chat_template(
    messages,
    tokenize=False,
    add_generation_prompt=True
)
model_inputs = tokenizer([text], return_tensors="pt").to(device)

generated_ids = model.generate(
    model_inputs.input_ids,
    max_new_tokens=512
)
generated_ids = [
    output_ids[len(input_ids):] for input_ids, output_ids in zip(model_inputs.input_ids, generated_ids)
]

response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0]

Cómo acceder a Qwen 2 7B mediante Novita AI

Guía paso a paso

Novita AI es una plataforma en la nube de IA que ofrece a los desarrolladores una forma sencilla de implementar modelos de IA mediante nuestra API simple, al mismo tiempo que proporciona la nube de GPU asequible y confiable para construir y escalar.

Paso 1: Iniciar sesión y acceder a la Biblioteca de modelos

Inicia sesión en tu cuenta y haz clic en el botón Biblioteca de modelos.

Iniciar sesión y acceder a la Biblioteca de modelos

¡Prueba la demo de Qwen 2 7B ahora!

Paso 2: Elige tu modelo

Explora las opciones disponibles y selecciona el modelo que se adapte a tus necesidades.

elige tu modelo

Paso 3: Comienza tu prueba gratuita

Inicia tu prueba gratuita para explorar las capacidades del modelo seleccionado.

comienza tu prueba gratuita

Paso 4: Obtén tu clave API

Para autenticarte con la API, te proporcionaremos una nueva clave API. Ingresa a la página de “Configuración” y copia la clave API como se indica en la imagen.

obtén la clave api

Paso 5: Instala la API

Instala la API usando el gestor de paquetes específico de tu lenguaje de programación.

instala la api

Después de la instalación, importa las bibliotecas necesarias en tu entorno de desarrollo. Inicializa la API con tu clave API para comenzar a interactuar con el LLM de Novita AI. Este es un ejemplo de uso de la API de completado de chat para usuarios de Python.

from openai import OpenAI
  
client = OpenAI(
    base_url="https://api.novita.ai/v3/openai",
    api_key="<YOUR Novita AI API Key>",
)

model = "qwen/qwen-2-7b-instruct"
stream = True # or False
max_tokens = 2048
system_content = """Be a helpful assistant"""
temperature = 1
top_p = 1
min_p = 0
top_k = 50
presence_penalty = 0
frequency_penalty = 0
repetition_penalty = 1
response_format = { "type": "text" }

chat_completion_res = client.chat.completions.create(
    model=model,
    messages=[
        {
            "role": "system",
            "content": system_content,
        },
        {
            "role": "user",
            "content": "Hi there!",
        }
    ],
    stream=stream,
    max_tokens=max_tokens,
    temperature=temperature,
    top_p=top_p,
    presence_penalty=presence_penalty,
    frequency_penalty=frequency_penalty,
    response_format=response_format,
    extra_body={
      "top_k": top_k,
      "repetition_penalty": repetition_penalty,
      "min_p": min_p
    }
  )

if stream:
    for chunk in chat_completion_res:
        print(chunk.choices[0].delta.content or "", end="")
else:
    print(chat_completion_res.choices[0].message.content)

Al registrarte, Novita AI proporciona un crédito de $0.5 para que empieces.

Si se agotan los créditos gratuitos, puedes pagar para seguir usándolo.

¿Qué métodos son adecuados para ti?

Comparación entre acceso local y mediante API

Acceso local

Ventajas:

  • Proporciona más control sobre el modelo y su configuración.
  • Adecuado para manejar textos largos aprovechando YARN para mejorar la extrapolación de longitud del modelo.
  • Sin costos recurrentes.

Desventajas:

  • Requiere recursos de hardware significativos, incluyendo 15.4 GB de VRAM.
  • Configuración y ajuste complejos.

Acceso mediante API (p. ej., Novita AI)

Ventajas:

  • Fácil de configurar y usar, con guías paso a paso proporcionadas.
  • No necesita recursos de hardware local.

Desventajas:

  • Requiere conexión a internet.
  • Implica costos por token: $0.054 por millón de tokens de entrada y $0.054 por millón de tokens de salida.
  • Control limitado sobre la personalización y configuración del modelo.

Recomendaciones para diferentes grupos de usuarios

  • Investigadores: Generalmente se prefiere el acceso local por su flexibilidad y control sobre los experimentos.

  • Desarrolladores:

    • El acceso mediante API es adecuado para construir aplicaciones y prototipos rápidos.
    • El acceso local es mejor para ajuste fino y flujos de trabajo personalizados.
  • Empresas: El acceso mediante API es beneficioso para una integración rápida en servicios sin altos costos iniciales. La implementación local puede ser adecuada para equipos con requisitos constantes y capacidad para invertir en infraestructura.

  • Pequeños equipos/individuos: El acceso mediante API es generalmente más práctico debido a los menores costos de inicio.

  • Usuarios con habilidades técnicas limitadas: El acceso mediante API es preferible ya que elimina la necesidad de conocimientos técnicos profundos.

Qwen 2 - 7B es un modelo versátil y potente diseñado para una amplia gama de aplicaciones. Admite tanto acceso local como mediante API, lo que permite a los usuarios elegir la opción que mejor se alinee con sus necesidades específicas, recursos disponibles y experiencia técnica.

Preguntas frecuentes

¿Cuáles son las características arquitectónicas clave de los modelos Qwen2?

Los modelos Qwen2 emplean una arquitectura basada en transformer con características como activación SwiGLU, sesgo QKV de atención y Atención de consulta agrupada (GQA).

¿Qué longitudes de contexto admiten los modelos Qwen2?

Los modelos de lenguaje base están preentrenados con longitudes de contexto de 32K tokens, y algunos modelos demuestran capacidades de extrapolación de hasta 128K tokens en la evaluación PPL.

Novita AI es la plataforma integral en la nube que impulsa tus ambiciones de IA. APIs integradas, serverless, instancia de GPU: las herramientas rentables que necesitas. Elimina la infraestructura, comienza gratis y haz realidad tu visión de IA.

Lecturas recomendadas