Skip to main content

Acerca de GitHub Copilot Chat en GitHub.com

GitHub Copilot Chat in GitHub.com puede ayudarle a responder preguntas sobre codificación directamente en GitHub.com.

¿Quién puede utilizar esta característica?

Owners of organizations with a GitHub Copilot Enterprise subscription can decide whether to grant access to the Copilot Enterprise functionality for an organization. For more information, see "Habilitación de funciones GitHub Copilot Enterprise."

Nota: Actualmente está viendo la documentación de los planes Free, Pro y Team. GitHub Copilot Enterprise solo está disponible para los clientes del plan GitHub Enterprise Cloud. Para obtener documentación completa de Copilot Enterprise, vea "GitHub Copilot para empresas". en la documentación de GitHub Enterprise Cloud.

Acerca de GitHub Copilot Chat in GitHub.com

GitHub Copilot Chat in GitHub.com es una interfaz de chat que te permite interactuar con GitHub Copilot, para hacer y recibir respuestas a preguntas relacionadas con la codificación dentro de GitHub.com.

La interfaz de chat proporciona acceso a información de codificación y soporte técnico sin necesidad de navegar por la documentación ni buscar en foros en línea.

Nota: Copilot Chat también está disponible en Visual Studio Code, Visual Studio y el conjunto de IDE de JetBrains. Sin embargo, las características disponibles en estos IDE difieren de las características disponibles en GitHub.com.

GitHub Copilot Chat puede responder una amplia variedad de preguntas relacionadas con la codificación sobre temas como sintaxis, conceptos de programación, casos de prueba, depuración, entre otros. GitHub Copilot Chat no está diseñado para responder preguntas no relacionadas con la codificación ni proporcionar información general sobre temas fuera de la codificación.

El idioma principal admitido para GitHub Copilot Chat en GitHub.com es el inglés.

GitHub Copilot Chat funciona mediante la combinación del procesamiento del lenguaje natural y el aprendizaje automático para entender tu pregunta y brindarte una respuesta. Este proceso se puede dividir en varios pasos.

Procesamiento de entradas

El sistema Copilot Chat procesa previamente el mensaje de entrada del usuario, combinado con información contextual (por ejemplo, la fecha y hora actuales y el nombre del repositorio que el usuario está viendo actualmente) y se envía a un modelo de lenguaje grande. La entrada del usuario puede adoptar la forma de fragmentos de código o lenguaje sin formato.

El modelo de lenguaje grande tomará el mensaje, recopilará contexto adicional (por ejemplo, los datos del repositorio almacenados en GitHub o los resultados de búsqueda de Bing) y proporcionarán una respuesta basada en el mensaje. El sistema solo está pensado para responder a preguntas relacionadas con la codificación.

Análisis del modelo de lenguaje

La solicitud procesada previamente luego se pasa a través del modelo de lenguaje de Copilot Chat, que es una red neuronal entrenada en un cuerpo de datos de texto de gran tamaño. El modelo de lenguaje analiza la solicitud de entrada.

Generación de respuestas

El modelo de lenguaje genera una respuesta basada en su análisis de la solicitud de entrada y el contexto proporcionado en ella. El modelo de lenguaje puede recopilar contexto adicional (por ejemplo, los datos del repositorio almacenados en GitHub o los resultados de búsqueda de Bing) y proporcionar una respuesta basada en el mensaje. Esta respuesta puede adoptar la forma de código generado, sugerencias de código o explicaciones del código existente.

Formato de salida

Se aplica formato a la respuesta generada por Copilot Chat y se la presenta al usuario. Copilot Chat puede usar el resaltado de sintaxis, sangría y otras características de formato para agregar claridad a la respuesta generada. Dependiendo del tipo de pregunta del usuario, también se pueden proporcionar vínculos al contexto que el modelo usó al generar una respuesta, como archivos de código fuente, resultados de búsqueda de Bing o documentación.

Copilot Chat está pensado para proporcionarte la respuesta más pertinente para tu pregunta. Sin embargo, es posible que no siempre proporcione la respuesta que buscas. Los usuarios de Copilot Chat son responsables de revisar y validar las respuestas que el sistema genera para asegurarse de que son precisas y adecuadas. Además, como parte del proceso de desarrollo de productos, realizamos equipos rojos para comprender y mejorar la seguridad de Copilot Chat. Los mensajes de entrada y las finalizaciones de salida se ejecutan a través de filtros de contenido. El sistema de filtrado de contenido detecta e impide la salida en categorías específicas de contenido, incluido contenido dañino, ofensivo o fuera del tema. Para obtener más información sobre cómo mejorar el rendimiento de Copilot Chat, consulte "Mejora del rendimiento para Copilot Chat".

Casos de uso de Copilot Chat

Copilot Chat puede proporcionar asistencia de codificación en diversos escenarios.

Respuesta a las preguntas de codificación

Puedes pedirle a Copilot Chat ayuda o aclaración en caso de problemas de codificación específicos y recibir respuestas en formato de lenguaje natural o en formato de fragmento de código.

La respuesta generada por Copilot Chat puede usar el conjunto de datos de entrenamiento del modelo, los resultados de búsqueda de Bing, el código de los repositorios y la documentación de Markdown en las bases de conocimiento para responder a sus preguntas.

Esto puede ser una herramienta útil para los programadores, ya que puede proporcionar guías y soporte técnico para tareas y desafíos comunes de codificación.

Explicación del código y sugerencias de mejoras

Copilot Chat puede ayudar a explicar el código seleccionado mediante la generación de descripciones en lenguaje natural del propósito y la funcionalidad del código. Esto puede ser útil si deseas comprender el comportamiento del código o para las partes interesadas no técnicas que necesitan entender cómo funciona el código. Por ejemplo, si seleccionas una función o un bloque de código en el editor de código, Copilot Chat puede generar una descripción en lenguaje natural de lo que hace el código y cómo encaja en el sistema general. Esto puede incluir información como los parámetros de entrada y salida de la función, sus dependencias y su propósito en la aplicación más grande.

Copilot Chat también puede sugerir posibles mejoras en el código seleccionado, como un control mejorado de errores y casos perimetrales, o cambios en el flujo lógico para que el código sea más legible.

Al generar explicaciones y sugerir documentación relacionada, Copilot Chat puede ayudarte a comprender el código seleccionado, lo que lleva a una mejor colaboración y a un desarrollo de software más eficaz. Sin embargo, es importante tener en cuenta que es posible que la documentación y las explicaciones generadas no siempre sean precisas o completas, por lo que deberás revisar (y, en ocasiones, corregir) la salida de Copilot Chat.

Propuesta de correcciones de código

Copilot Chat puede proponer una corrección de los errores existentes en el código; para ello, sugiere fragmentos de código y soluciones en función del contexto del error o problema. Esto puede resultar útil si tienes dificultades para identificar la causa principal de un error o necesitas instrucciones sobre la mejor manera de corregirlo. Por ejemplo, si el código genera un mensaje de error o una advertencia, Copilot Chat puede sugerir correcciones posibles en función del mensaje de error, la sintaxis del código y el código circundante.

Copilot Chat puede sugerir cambios en variables, estructuras de control o llamadas de función que podrían resolver el problema y generar fragmentos de código que se puedan incorporar en el código base. Sin embargo, es importante tener en cuenta que es posible que las correcciones sugeridas no siempre sean óptimas o completas, por lo que deberás revisar y probar las sugerencias.

Mejora del rendimiento para Copilot Chat

Copilot Chat puede admitir una amplia variedad de aplicaciones prácticas, como las preguntas y respuestas, la generación de código, el análisis de código y las correcciones de código, cada una de las cualquier con distintas métricas de rendimiento y estrategias de mitigación. Hay varias medidas que puedes tomar para mejorar el rendimiento y abordar algunas de las limitaciones de Copilot Chat. Para obtener más información sobre las limitaciones de Copilot Chat, consulte "Limitaciones de GitHub Copilot Chat".

Limite sus solicitudes al tema en cuestión

Copilot Chat está pensado exclusivamente para abordar consultas relacionadas con la codificación. Por lo tanto, limitar la solicitud a preguntas o tareas relacionadas con la codificación puede mejorar la calidad de la salida del modelo.

Usa Copilot Chat como una herramienta, no como un reemplazo.

Si bien Copilot Chat puede ser una herramienta eficaz para generar código, es importante que la utilices como herramienta y no como reemplazo de la programación humana. Siempre debe revisar y probar el código que genera Copilot Chat para asegurarse de que cumple con sus requisitos y que no tiene errores ni problemas de seguridad.

Uso de procedimientos de codificación segura y revisión del código

Si bien Copilot Chat puede generar código sintácticamente correcto, es posible que no siempre sea seguro. Siempre tienes que seguir los procedimientos recomendados para lograr una codificación segura, como evitar las contraseñas codificadas de forma rígida o las vulnerabilidades por inyección de código SQL, así como seguir los procedimientos recomendados de revisión del código, para abordar las limitaciones de Copilot Chat.

Proporcionar comentarios

Nota: La capacidad de proporcionar comentarios a GitHub sobre Copilot pull request summaries depende de la configuración empresarial. Para obtener más información, vea «Habilitación de funciones GitHub Copilot Enterprise».

Si encuentra algún problema o limitaciones con Copilot Chat in GitHub.com, le recomendamos enviar comentarios al hacer clic en el icono de pulgar hacia abajo debajo de cada respuesta de chat. Esto puede ayudar a los desarrolladores a mejorar la herramienta y abordar cualquier problema o limitación.

Manténgase actualizado.

Copilot Chat es una tecnología nueva y es probable que evolucione con el tiempo. En GitHub Copilot Chat in GitHub.com, siempre tendrá acceso a la experiencia de producto más reciente. Debe mantenerse al día con los riesgos de seguridad o procedimientos recomendados nuevos que puedan surgir.

Limitaciones de GitHub Copilot Chat

En función de factores como el código base y los datos de entrada, es posible que experimentes distintos niveles de rendimiento al utilizar Copilot Chat. La información siguiente está diseñada para ayudarte a entender las limitaciones del sistema y los conceptos clave sobre el rendimiento a medida que se aplican a Copilot Chat.

Ámbito limitado

Copilot Chat se entrenó en un cuerpo de código grande, pero sigue teniendo un ámbito limitado y es posible que no pueda controlar estructuras de código más complejas o lenguajes de programación oscuros. Para cada idioma, la calidad de las sugerencias que reciba puede depender del volumen y la diversidad de datos de entrenamiento para ese idioma. Por ejemplo, JavaScript está bien representado en repositorios públicos y es uno de los mejores lenguajes admitidos de GitHub Copilot. Los lenguajes con menos representación en repositorios públicos pueden ser más problemáticos para Copilot Chat en términos de apoyo. Además, Copilot Chat solo puede sugerir código basado en el contexto del código que se está escribiendo, por lo que es posible que no pueda identificar problemas de diseño o arquitectura más grandes.

Sesgos posibles

Los datos de entrenamiento de Copilot (extraídos de los repositorios de código existentes) y el contexto recopilado por el modelo de lenduaje grande (por ejemplo, resultados de búsqueda de Bing) pueden contener sesgos y errores que la herramienta puede perpetuar. Además, Copilot Chat puede tener un sesgo hacia determinados lenguajes de programación o estilos de codificación, lo que puede dar lugar a sugerencias de código poco óptimas o incompletas.

Riesgos de seguridad

Copilot Chat genera código basado en el contexto del código que se está escribiendo, lo que puede exponer información confidencial o vulnerabilidades si no se usa cuidadosamente. Debes tener cuidado al usar Copilot Chat para generar código para aplicaciones que afectan a la seguridad y siempre debes revisar y probar el código generado de manera exhaustiva.

Coincidencias con código público

Copilot Chat es capaz de generar código nuevo y lo hace de manera probabilística. Aunque la probabilidad de que pueda generar código que coincida con el código del conjunto de formación es baja, una sugerencia de Copilot Chat puede contener algunos fragmentos de código que coinciden con el código del conjunto de formación. Copilot Chat utiliza filtros que bloquea las coincidencias con el código público en repositorios de GitHub, pero siempre debe tomar las mismas precauciones que con cualquier código que escriba que use materiales que no originaste de forma independiente, incluidas las precauciones para garantizar su idoneidad. Estas incluyen pruebas rigurosas, examen de IP y revisión de vulnerabilidades de seguridad.

Código inexacto

Una de las limitaciones de Copilot Chat es que puede generar código que aparenta ser válido, pero que en realidad no es semántica o sintácticamente correcto o puede que no refleje con precisión la intención del desarrollador. Para mitigar el riesgo de código inexacto, debes revisar y probar cuidadosamente el código generado, especialmente cuando se trabaja con aplicaciones críticas o confidenciales. También debes asegurarte de que el código generado cumple con los procedimientos recomendados y los modelos de diseño y se ajusta a la arquitectura general y al estilo del código base.

Respuestas inexactas a temas no relacionados con la codificación

Copilot Chat no está diseñado para responder preguntas no relacionadas con la codificación y, por lo tanto, es posible que sus respuestas no siempre sean precisas o útiles en estos contextos. Si un usuario le hace una pregunta no relacionada con la codificación a Copilot Chat, este puede generar una respuesta irrelevante o sin sentido, o bien simplemente puede indicar que no puede proporcionar ninguna respuesta útil.

Uso de una búsqueda web para responder a una pregunta

Según la pregunta que haga, GitHub Copilot Chat en GitHub.com puede usar opcionalmente una búsqueda de Bing para ayudar a responder a su pregunta. Copilot usará Bing para consultas sobre eventos recientes, nuevas tendencias o tecnologías, temas muy específicos o cuando el usuario solicita explícitamente una búsqueda web. El administrador de GitHub Enterprise puede habilitar Bing para toda la empresa o delegar esta decisión al administrador de la organización. Para obtener más información, vea «Aplicación de directivas de GitHub Copilot en su empresa».

Al usar Bing, Copilot utilizará el contenido del mensaje, así como contexto disponible adicional, para generar una consulta de búsqueda de Bing en su nombre que se envía a Bing Search API. Copilot proporcionará un vínculo a los resultados de búsqueda con su respuesta. La consulta de búsqueda enviada a Bing se rige por la Declaración de privacidad de Microsoft.

Pasos siguientes

Para más información sobre cómo usar GitHub Copilot Chat in GitHub.com, consulte:

Información adicional