Ollama acceso al asistente de programación local AI Copilot

breve

Este documento describe cómo construir localmente algo como Copiloto para ayudarle a escribir un código más atractivo y eficaz.

Con este curso aprenderás a utilizar Ollama Integración de asistentes locales de programación, incluidos

Atención:

  1. Vamos a hablar de la instalación y el uso básico de VScode. jetbrain se utiliza de forma muy parecida a VScode, sólo hay que referirse a vscode.
  2. Las características y configurables disponibles con jetbrain no son tan ricas como las disponibles con VScode, por lo que se recomienda utilizar VScode.
  3. Construir Copilot localmente tiene mayores requerimientos para la máquina, especialmente para la parte de autocompletado del código, así que si no tienes necesidades especiales, es recomendable que compres una API para usarlo.

 

I. Introducción a la programación de IA

1.1 ¿Por qué programamos con IA?

El Big Language Model existe desde hace mucho tiempo, pero el área en la que mejor ha funcionado ha sido la programación, por las siguientes razones:

  1. Criterios claros de lo que está bien y lo que está mal. En el mundo de la programación, el código funciona o no funciona. Esta naturaleza en blanco y negro facilita que la IA juzgue la calidad de sus resultados.
  2. Lenguaje preciso. Los lenguajes de programación no tienen mucha ambigüedad. Cada símbolo, cada palabra clave tiene un significado claro. Esta precisión es lo que se les da bien a los modelos de IA.
  3. Misiones específicas. Cuando escribimos código, solemos tener un objetivo claro. Por ejemplo: "Escribe una función que calcule la secuencia de Fibonacci". Unas instrucciones tan claras facilitan que la IA se centre en el problema.
  4. Generalizabilidad de los conocimientos. Una vez aprendidos los conceptos básicos de un lenguaje de programación, muchas cosas pueden transferirse a otros lenguajes. Esta transferibilidad de conocimientos hace que los modelos de IA sean especialmente eficaces en el ámbito de la programación.

1.2 ¿Cómo programamos con IA?

  1. Uso de la aplicación Big Model Dialogue (no se explica más aquí)
  2. Uso del entorno de desarrollo integrado (IDE)
    • Continúe en
  3. Uso de herramientas de línea de comandos
    • Ayudante

 

II. IDE Continuar acceso

2.1 Instalación de los modelos necesarios

  1. Instalar Ollama
  2. Instale los siguientes modelos
    • Instalación del modelo universal de preguntas y respuestas (UQA) ollama pull llama3:8b
    • Instalación de modelos de cumplimentación automática de códigos. ollama pull starcoder2:3b
    • Instala el modelo de incrustación. ollama pull nomic-embed-text

2.2 Instalación de Continue en VScode y configuración de Ollama local

  1. Instalación de modelos en la biblioteca de plugins VScode
    Busque Continuar, vea el siguiente icono, haga clic en instalar o instalar
    Ollama 接入本地 AI Copilot 编程助手
  2. (Acción recomendada) Es muy recomendable mover "Continuar" a la barra lateral derecha de VS Code. Esto ayuda a mantener abierto el explorador de archivos cuando se utiliza Continuar, y permite alternar la barra lateral con un simple atajo de teclado.
    Ollama 接入本地 AI Copilot 编程助手
  3. Configuración Ollama
    Forma 1: Haga clic en Seleccionar modelo---- seleccione Añadir modelo---- haga clic en Ollama---- seleccione Autodetectar
    Esto seleccionará automáticamente el modelo que acabamos de descargar en Ollama para la herramienta de razonamiento de código.
    Ollama 接入本地 AI Copilot 编程助手
    Ollama 接入本地 AI Copilot 编程助手
    Modo 2: Haga clic en el botón Setup como se muestra en la figura para entrar en la página de configuración, y pegue la siguiente configuración

    {
    "models": [
    {
    "title": "Ollama",
    "provider": "ollama",
    "model": "AUTODETECT"
    }
    ],
    "tabAutocompleteModel": {
    "title": "Starcoder 2 3b",
    "provider": "ollama",
    "model": "starcoder2:3b"
    },
    "embeddingsProvider": {
    "provider": "ollama",
    "model": "nomic-embed-text"
    }
    }
    

    Ollama 接入本地 AI Copilot 编程助手

2.3 Pautas básicas de uso

  1. Código fácil de entender
Ollama 接入本地 AI Copilot 编程助手
  • Código VS. cmd+L ( MacOS ) / ctrl+L ( Windows )
  • JetBrains. cmd+J ( MacOS ) / ctrl+J ( Windows )
  1. Uso del tabulador para autocompletar código
Ollama 接入本地 AI Copilot 编程助手
  • Código VS. tab ( MacOS ) / tab ( Windows )
  • JetBrains. tab ( MacOS ) / tab ( Windows )
  1. La IA modifica rápidamente su código
Ollama 接入本地 AI Copilot 编程助手
  • Código VS. cmd+I ( MacOS ) / ctrl+I ( Windows )
  • JetBrains. cmd+I ( MacOS ) / ctrl+I ( Windows )
  1. Formular preguntas basadas en el directorio de códigos actual
Ollama 接入本地 AI Copilot 编程助手
  • Código VS. @codebase ( MacOS ) / @codebase ( Windows )
  • JetBrains : soporte futuro
  1. Formular una pregunta basada en la documentación oficial
Ollama 接入本地 AI Copilot 编程助手
  • Código VS. @docs ( MacOS ) / @docs ( Windows )
  • JetBrains. @docs ( MacOS ) / @docs ( Windows )

2.4 Referencias

Página web oficial: https://docs.continue.dev/intro

 

Entorno de línea de comandos Acceso al asistente

Aider es un asistente de programación basado en la línea de comandos que tiene acceso al sistema de nivel superior y el uso de características que un IDE, pero también significa que es más difícil empezar.

Los siguientes tutoriales le enseñarán a instalar Aider y a conectarse al servicio Ollama.

Además, asegúrate:

  1. Tener git instalado y experiencia con git.
  2. Experiencia con python

3.1 Instalación del asistente

  1. Aider tiene muchas dependencias de entornos python, por lo que se recomienda utilizar conda para crear un nuevo entorno o python para crear un nuevo entorno virtual.
    • Inicia un nuevo entorno virtual conda (lo mismo para el entorno virtual python)
      conda create -n aider_env python=3.9
      
    • Entra en este entorno virtual
      conda activate aider_env
      
    • Siga estos comandos para instalar
      python -m pip install aider-chat
      

3.2 Configuración e inicio de Ollama

  1. Inicie la línea de comandos y configure las variables de entorno del siguiente modo
    export OLLAMA_API_BASE=http://127.0.0.1:11434 # Mac/Linux环境
    setx OLLAMA_API_BASE http://127.0.0.1:11434 # Windows环境,设置以后重启shell工具
    
  2. cd para acceder a su repositorio local, si no, Aider inicializará automáticamente un repositorio git en el directorio actual.
    #example 
    cd D:\Myfile\handy-ollama\handy-ollama\handy-ollama
    
  3. Ejecute Aider con el siguiente comando
    aider --model ollama/<你的模型名字>
    #example
    #aider --model ollama/llama3:8b
    

    También puede utilizar archivos .env para configurar la información relacionada con Aider
    por ejemplo

    ## 指定OPENAI_KEY(如果有的话)
    OPENAI_API_KEY=xxx
    ## 指定你使用model
    AIDER_MODEL=ollama/llama3:8b
    

    Más referencias de configuración:https://aider.chat/docs/config/dotenv.html

  4. Tiene éxito si entra en la siguiente página
    Ollama 接入本地 AI Copilot 编程助手
  5. Ahora puedes chatear con él o enviarle algunos comandos y puede modificar tu código directamente
    Ollama 接入本地 AI Copilot 编程助手

3.3 Uso básico

  1. Puede pedirle alguna información básica sobre este repositorio
    Ollama 接入本地 AI Copilot 编程助手
  2. Añadir archivos
    /add <file1> <file2> ...
    

    A continuación, puede hacer algunas preguntas basadas en estos documentos

    • Puedes usar Aider sin añadir ningún archivo y tratará de averiguar qué archivos necesitan ser editados basándose en tu petición. (Pero el pensamiento es a menudo malo)
    • Añade archivos relevantes para hacer cambios o responder preguntas sobre un código o archivo específico. (No añadas un montón de archivos extra. Si añades demasiados archivos, la generación no será tan eficaz y te costará más. Ficha ).

    Ejemplo:
    Ollama 接入本地 AI Copilot 编程助手
    Ollama 接入本地 AI Copilot 编程助手
    Ollama 接入本地 AI Copilot 编程助手

  3. Utilice Aider para realizar cambios directamente en los archivos de código u otros archivos, como añadir un resumen a la última línea de un Léame.
    Ollama 接入本地 AI Copilot 编程助手
    Ver el documento real
    Ollama 接入本地 AI Copilot 编程助手
  4. Si no desea que Aider haga realmente algo con el archivo, puede anteponer al diálogo el operador /ask
  5. Eliminar todos los archivos añadidos con /drop

3.4 Referencias

Una lista de los comandos de barra más utilizados:

comandodescripciones
/addAñadir archivos al chat para que GPT pueda editarlos o revisarlos en detalle
/askHaga preguntas sobre el código base sin editar ninguno de los archivos
/chat-modeCambiar al nuevo modo de chat
/clearBorrar historial de chat
/clipboardAñadir imágenes/texto del portapapeles al chat (opcionalmente, proporcionar nombres para las imágenes)
/codeSolicitar cambios en el código
/commitEnviar ediciones realizadas en el almacén fuera del chat (mensaje de envío opcional)
/diffMuestra la diferencia de cambios desde el último mensaje
/dropEliminar archivos de la sesión de chat para liberar espacio en el contexto
/exitSalir de la aplicación
/gitEjecute el comando git
/helpHaga una pregunta sobre aider
/lintComprobación y corrección del código de los archivos proporcionados o en el chat (si no se proporcionan archivos)
/lsEnumera todos los archivos conocidos e indica qué archivos se incluyen en la sesión de chat
/mapImprimir la información actual del almacén
/map-refreshForzar la actualización e impresión de la información del almacén
/modelCambiar a un nuevo modelo lingüístico
/modelsBuscar en la lista de modelos disponibles
/quitSalir de la aplicación
/read-onlyAñadir archivo al chat, sólo para información, no editable
/runEjecute el comando shell y, opcionalmente, añada la salida al chat (alias: !)
/testEjecuta el comando shell y añade la salida al chat en un código de salida distinto de cero
/tokensInformar del número de tokens actualmente en uso en el contexto de chat.
/undoDeshacer el último commit git si fue hecho por aider
/voiceGrabar y transcribir la voz
/webCaptura páginas web, conviértelas en markdown y añádelas al chat

Para más información, consulte https://aider.chat/docs/usage.html

 

IV. Entorno de desarrollo integrado RooCline access (nuevo)

4.1 Cline y RooCline

Cline Es el plugin de programación ai para vscode más popular del mundo. Utiliza la ayuda de la IA de una forma diferente a la mayoría de herramientas del mercado. En lugar de centrarse únicamente en la generación o finalización de código, funciona como una herramienta a nivel de sistema que puede interactuar con todo el entorno de desarrollo. Esta característica es especialmente importante cuando se trata de escenarios complejos de depuración, refactorización a gran escala o pruebas de integración, como podemos ver en la sección Cline de la referencia. Hoy vamos a presentar Roo Cline.

RooCline es una versión mejorada de Cline centrada en mejorar la eficiencia y la flexibilidad del desarrollo. Es compatible con varios lenguajes y modelos (por ejemplo, Gemini, Meta, etc.), y ofrece funciones como notificaciones inteligentes, optimización del manejo de archivos y detección de código faltante. Además, RooCline admite la ejecución en paralelo con Cline para los desarrolladores que necesiten trabajar en varias tareas al mismo tiempo.

aunque Roo Cline Todavía no es tan grande como Cline, pero está creciendo rápidamente. Añade algunas funciones experimentales adicionales a Cline y también puede autoescribir partes de su código con una mínima intervención humana.

Y Cline consume un elevado número de fichas, lo que repercute más o menos en los costes de desarrollo diarios.

Ollama 接入本地 AI Copilot 编程助手

4.2 Instalación de RooCline en VScode y configuración de Ollama local

[](https://github.com/datawhalechina/handy-ollama/blob/main/docs/C7/1.1 TP3T20AICopilot .md#42--vscode--roocline- - ollama)

  1. Modelo de instalación de Ollama (en deepseek-r1:1.5b por ejemplo)
    ollama run deepseek-r1:1.5b
    
  2. Instalación de modelos en la biblioteca de plugins VScode
    Busque Roo Cline, vea el siguiente icono, haga clic en instalar o instalar
    Ollama 接入本地 AI Copilot 编程助手
  3. Configuración ollama
    1. Haz clic en el icono Roo cline de la derecha
    2. Haga clic en el icono Configuración
    3. Nombre del modelo de entrada
    4. Haga clic en Listo

    Ollama 接入本地 AI Copilot 编程助手

  4. Ahora puedes usar vscode como cualquier otro editor integrado + ai.
    Ollama 接入本地 AI Copilot 编程助手

A continuación veremos algunas características exclusivas de Roo cline.

4.3 Características de Roo Cline

Tenga en cuenta que estas funciones dependen de ciertas capacidades de modelos grandes, especialmente cuando se aplican a nivel del sistema de control. El deepseek-r1:1.5b de nuestro ejemplo no tiene la capacidad de realizar estas operaciones a continuación, e informará de demasiada complejidad. Se recomienda acceder a búsqueda profunda acceso api (es barato).

Para las siguientes funciones 1~2, haga clic en el icono Prompt del área de funciones para acceder a la página de configuración.

Ollama 接入本地 AI Copilot 编程助手
  1. Compatibilidad con API/modelos arbitrarios
    • OpenRouter/Anthropic/Glama/OpenAI/Google Gemini/AWS Bedrock/Azure/GCP Vertex
    • Modelos nativos (LM Studio/Ollama) y cualquier interfaz compatible con OpenAI
    • Se pueden utilizar diferentes modelos para diferentes patrones (por ejemplo, modelo de alto nivel para el diseño arquitectónico, modelo económico para la codificación cotidiana).
    • Seguimiento del uso a nivel de sesión (consumo de tokens y estadísticas de costes)
  2. Modos personalizados: personalización mediante modos Código Roo funciones, instrucciones y permisos:
    • modo integrado
      • Código Modo: asistente de codificación multifunción por defecto
      • Arquitecto Patrones: diseño a nivel de sistema y análisis arquitectónico
      • Pregunta a Modelo: Investigación en profundidad y preguntas y respuestas
    • Modo de creación de usuarios
      • Escriba "Crear un nuevo modo para" para crear un rol personalizado.
      • Cada modo puede tener comandos y conjuntos de habilidades independientes (se gestionan en la pestaña Avisos)
    • Funciones avanzadas
      • Restricciones de tipo de archivo (por ejemplo, el modo ask/architect sólo edita markdown).
      • Reglas de archivo personalizadas (por ejemplo, operar sólo con archivos de prueba .test.ts)
      • Cambio entre modos (por ejemplo, modo de autocodificación para funciones específicas)
      • Creación autónoma de nuevos modelos (con definición de funciones y límites de archivos)
  3. Control de granularidad Roo cline Permisos
    Haga clic en la pantalla Configuración para entrar: puede controlar los permisos de Roo cline en la Configuración de aprobación automática.
    Tenga en cuenta que esto controla qué acciones pueden realizarse automáticamente sin su consentimiento. De lo contrario, se le pedirá que haga clic en el proceso de confirmación antes de continuar.
    Ollama 接入本地 AI Copilot 编程助手
  4. Operaciones de archivo y editor
    • Creación/edición de archivos de proyecto (comparación de diferencias)
    • Respuesta automática a errores de código (falta de importaciones, problemas de sintaxis, etc.)
    • Seguimiento de los cambios a través de la línea de tiempo del editor (para facilitar la revisión/retroceso)
  5. Integración de la línea de comandos
    • Comandos de gestión/construcción/prueba de paquetes
    • Supervise la producción y adáptese automáticamente a los errores
    • Ejecución continua de servidores de desarrollo en segundo plano Soporte para políticas de aprobación: confirmación línea por línea/aprobación automática de operaciones rutinarias
  6. Automatización del navegador
    En el tercer paso, seleccione las siguientes opciones para dotar a Roo Cline de capacidades de automatización web
    Ollama 接入本地 AI Copilot 编程助手

    • Lanzamiento de aplicaciones web locales o remotas
    • Tocar/Entrar/Desplazarse/Operación de captura de pantalla
    • Recopilación de registros de consola para depurar problemas en tiempo de ejecución Para pruebas de extremo a extremo y verificación visual
  7. MCP Extensión de herramientas
    Modelo de Protocolo de Contexto (MCP) es un protocolo de extensión de capacidades para Roo que permite a Roo comunicarse con servidores locales que proporcionan herramientas y recursos adicionales. Equivale a poner un "cerebro externo" al asistente de programación.
    Modo dual local/nube: puede utilizar las herramientas y servicios locales de su ordenador, pero también puede conectarse a los módulos listos para usar compartidos por la comunidad.
    Crear dinámicamente una herramienta: simplemente dile a Roo que "cree una herramienta que busque la última documentación npm" y generará automáticamente el código de acoplamiento.
    Ejemplos:

    1. Recoger recursos comunitarios: utilizar ruedas construidas por otros
      Por ejemplo, accediendo a la "Herramienta de consulta de la API meteorológica" existente.
      Uso directo de herramientas validadas por la comunidad de código abierto
    2. Herramientas privadas de creación propia: adaptadas a las necesidades de la empresa
      Di: "Crea una herramienta que capture los registros internos de la empresa".
      Roo se genera automáticamente:

      # 示例自动生成的工具框架
      class LogTool(MCPPlugin):
      def fetch_logs(self, service_name):
      # 自动对接公司日志系统
      # 返回最近1小时的关键错误日志
      ...
      

      Una vez que la hayas comprobado, la herramienta aparecerá en la lista de habilidades de Roo.

    3. Mecanismo de seguridad: todas las nuevas herramientas deben ser revisadas y autorizadas manualmente antes de su activación, para evitar llamadas aleatorias a interfaces sensibles.

    Ollama 接入本地 AI Copilot 编程助手

  8. Context@: una forma de proporcionar contexto adicional:
    • @fileContenido del documento incrustado
    • @folder: Contiene la estructura completa del catálogo
    • @problems: Introducir errores/advertencias en el espacio de trabajo
    • @url: Obtener documentación URL (a markdown)
    • @git: Proporciona análisis de registros/discrepancias de commits de Git para ayudar a centrarse en la información clave y optimizar el uso de tokens.

Referencias (lecturas recomendadas)

Roo Cline dirección github: https://github.com/RooVetGit/Roo-Code Ahora renombrado a Código RooMás novedades por descubrir.

Introducción de Cline:Cline (Claude Dev): complemento de VSCode para la programación automatizada

Comparación de herramientas de programación de IA:Comparación de las herramientas de programación Trae, Cursor y Windsurf AI

Complete un sitio web de servicios de IA desde cero sin escribir una sola línea de código utilizando herramientas de programación de IA: https://cloud.tencent.com/developer/article/2479975

© declaración de copyright

Artículos relacionados

Sin comentarios

Debe iniciar sesión para participar en los comentarios.
Acceder ahora
ninguno
Sin comentarios...