Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
GitHub Copilot en Visual Studio Code proporciona sugerencias de código inteligentes, pero esas sugerencias se vuelven aún más eficaces cuando comprenden su contexto de base de datos específico. La extensión Azure Cosmos DB para Visual Studio Code ahora proporciona automáticamente a GitHub Copilot recomendaciones y procedimientos recomendados específicos de Azure Cosmos DB, lo que permite la asistencia de IA con reconocimiento de contexto para el desarrollo de bases de datos.
Cuando se conecta a la cuenta de Azure Cosmos DB a través de la extensión de Visual Studio Code, crea automáticamente un azurecosmosdb.instructions.md archivo en la carpeta de perfiles de usuario. Este archivo actúa como proveedor de contexto para GitHub Copilot, lo que garantiza que la inteligencia artificial comprende la configuración de Azure Cosmos DB y puede proporcionar sugerencias optimizadas para la creación de particiones, la optimización del rendimiento, los diagnósticos, etc.
¿Por qué importa la inteligencia artificial compatible con el contexto?
Los asistentes de codificación de IA, como GitHub Copilot, solo son tan eficaces como el contexto que tienen. Sin comprender cómo interactúa la aplicación con Azure Cosmos DB, como estrategias de creación de particiones, patrones de indexación o diseño de consultas, Copilot podría generar sugerencias que no están optimizadas para la configuración de la base de datos.
Con el azurecosmosdb.instructions.md archivo implementado automáticamente, Copilot obtiene acceso inmediato a:
- Procedimientos recomendados de Azure Cosmos DB para la administración del rendimiento y el diseño de claves de partición
- Sugerencias de optimización del rendimiento para consultas y indexación de varias particiones
- Recomendaciones de registro de diagnóstico para solucionar problemas de latencia o errores
- Guía de configuración rentable para varios escenarios, incluida la búsqueda de vectores
- Patrones de uso del SDK y estrategias de control de errores
Prerrequisitos
- Visual Studio Code instalado en el equipo
- Suscripción a GitHub Copilot (individual, negocios o empresarial)
- Una cuenta de Azure Cosmos DB (cualquier API)
- Suscripción de Azure con los permisos adecuados para acceder a los recursos de Cosmos DB
Paso 1: Instalar las extensiones necesarias
En primer lugar, asegúrese de que tiene instalada la extensión de Azure Cosmos DB y la extensión de GitHub Copilot:
Instalación de la extensión de Azure Cosmos DB
- Abrir Visual Studio Code
- Para ir a la vista Extensiones , seleccione Ver > extensiones o presione Ctrl+Mayús+X (Windows/Linux) o Cmd+Mayús+X (macOS)
- Busque "Azure Cosmos DB" o use el identificador de extensión:
ms-azuretools.vscode-cosmosdb - Seleccione Instalar en la extensión Azure Databases de Microsoft.
- Vuelva a cargar Visual Studio Code si se le solicita
Instalación de GitHub Copilot
- En la vista Extensiones , busque "GitHub Copilot"
- Instala la extensión GitHub Copilot de GitHub
- Inicie sesión en su cuenta de GitHub cuando se le solicite
- Active la suscripción de Copilot si aún no lo ha hecho
Paso 2: Conexión a la cuenta de Azure Cosmos DB
Conecte la cuenta de Azure Cosmos DB para habilitar las características compatibles con el contexto:
Para Azure Cosmos DB for NoSQL
- En Visual Studio Code, abra el panel de Azure seleccionando el icono de Azure en la barra de actividades.
- Inicio de sesión en su cuenta de Azure con el identificador de Microsoft Entra
- En la vista de árbol de Azure, expanda la suscripción.
- Localiza y expande Azure Cosmos DB
- Haga clic con el botón derecho en la cuenta de Azure Cosmos DB para NoSQL o selecciónela para conectarse.
Nota:
Si está en un entorno corporativo con restricciones de red, es posible que deba configurar reglas del cortafuegos para permitir su dirección IP. Considere la posibilidad inicial de permitir todas las direcciones IP (0.0.0.0 - 255.255.255.255) para las pruebas y, a continuación, refinar la lista de permitidos para su uso en producción.
Paso 3: Comprobación de la implementación de archivos de contexto
Una vez conectado, la extensión crea automáticamente el archivo en la azurecosmosdb.instructions.md carpeta de perfil de usuario:
Ubicación de Windows:
%APPDATA%\Code\User\prompts\azurecosmosdb.instructions.md
Ubicación de macOS:
~/Library/Application Support/Code/User/prompts/azurecosmosdb.instructions.md
Ubicación de Linux:
~/.config/Code/User/prompts/azurecosmosdb.instructions.md
Este archivo se implementa automáticamente en el perfil de usuario, lo que hace que esté disponible en todas las áreas de trabajo de Visual Studio Code sin necesidad de duplicación en cada proyecto.
Paso 4: Experiencia de sugerencias compatibles con el contexto
Ahora GitHub Copilot proporciona sugerencias optimizadas para Azure Cosmos DB. Estos son algunos ejemplos de cómo el contexto mejorado mejora la experiencia de desarrollo:
Sugerencias de consulta optimizadas
Al escribir consultas, Copilot ahora comprende patrones específicos de Azure Cosmos DB:
// Copilot will suggest optimized query patterns
const query = {
query: "SELECT * FROM c WHERE c.partitionKey = @partitionKey AND c.status = @status",
parameters: [
{ name: "@partitionKey", value: userId },
{ name: "@status", value: "active" }
]
};
Mejores prácticas recomendadas
Copilot sugiere seguir los procedimientos recomendados de Azure Cosmos DB para el modelado de datos:
// Copilot suggests embedding related data for single-partition queries
const userDocument = {
id: userId,
partitionKey: userId, // Copilot suggests consistent partition key usage
profile: {
name: "John Doe",
email: "john@example.com",
preferences: {
theme: "dark",
notifications: true
}
},
// Embed frequently accessed related data
recentActivity: [
{ action: "login", timestamp: "2024-01-01T10:00:00Z" },
{ action: "purchase", timestamp: "2024-01-01T11:30:00Z" }
]
};
Control de errores y diagnósticos
Copilot sugiere patrones de control de errores adecuados específicos de Azure Cosmos DB:
try {
const response = await container.items.create(document);
console.log("Document created successfully");
} catch (error) {
// Copilot suggests Azure Cosmos DB-specific error handling
if (error.code === 429) {
console.log("Rate limited. Retry after:", error.retryAfterInMilliseconds);
// Implement exponential backoff
} else if (error.code === 409) {
console.log("Document already exists");
} else {
console.error("Error creating document:", error.message);
// Log diagnostic information for troubleshooting
console.log("Diagnostic info:", response.diagnostics);
}
}
Ventajas para desarrolladores
Esta integración transforma la extensión de Azure Cosmos DB en algo más que una herramienta de administración, sino que se convierte en una capa de conocimiento de IA dentro del entorno de desarrollo. Con ayuda contextual, puede hacer lo siguiente:
✅
Escriba consultas optimizadas y realice llamadas SDK guiadas por prácticas recomendadas contextuales
✅
Evitar problemas comunes al principio del desarrollo
✅
Recibir sugerencias alineadas con las instrucciones reales de Azure Cosmos DB, no con la lógica genérica de la base de datos
✅
Mejora del rendimiento a través de optimizaciones sugeridas por ia
✅
Reducir el tiempo de desarrollo con finalizaciones de código relevantes y compatibles con el contexto
Personalización de las instrucciones
El azurecosmosdb.instructions.md archivo está abierto y extensible. Ustedes pueden:
- Revise el archivo para comprender qué contexto se proporciona a Copilot.
- Adición de instrucciones específicas del proyecto para los estándares de codificación de su equipo
- Contribuir a mejoras mediante el envío de solicitudes de incorporación de cambios al repositorio de GitHub
- Notificar problemas o sugerencias en la sección de problemas
Procedimientos recomendados para obtener la máxima ventaja
Para obtener el máximo partido de esta asistencia de inteligencia artificial con reconocimiento del contexto:
1. Mantener la extensión actualizada
Actualice periódicamente la extensión de Azure Cosmos DB para recibir los procedimientos recomendados y mejoras más recientes.
2. Usar nombres descriptivos de variables
Copilot proporciona mejores sugerencias cuando el código usa nombres descriptivos claros que indican conceptos de Azure Cosmos DB:
// Good - Clear Azure Cosmos DB context
const cosmosClient = new CosmosClient({ endpoint, key });
const database = cosmosClient.database("productCatalog");
const container = database.container("products");
// Less optimal - Generic naming
const client = new CosmosClient({ endpoint, key });
const db = client.database("productCatalog");
const coll = db.container("products");
3. Incluir comentarios sobre el modelo de datos
Ayude a Copilot a proporcionar sugerencias más relevantes agregando comentarios sobre la estrategia de creación de particiones y el modelo de datos:
// Partition by userId to ensure user data is co-located
// Embed user preferences to minimize cross-partition queries
const userDocument = {
id: generateUserId(),
partitionKey: userId, // Using userId as partition key for user isolation
// ... rest of document
};
4. Usar las características de administración de datos de la extensión
Use las características integradas de la extensión junto con Copilot para obtener una experiencia de desarrollo completa:
- Editor de consultas para probar y optimizar consultas
- Administración de documentos para edición en tiempo real
- Métricas de rendimiento para comprender los costos de las consultas
- Funcionalidades de exportación para el análisis de datos
Solución de problemas
Copilot no proporciona sugerencias específicas de Azure Cosmos DB
-
Comprobar la implementación de archivos: compruebe que
azurecosmosdb.instructions.mdexiste en la carpeta de perfiles de usuario. - Reiniciar Visual Studio Code: a veces se necesita un reinicio para que los cambios surtan efecto
- Comprobación del estado de GitHub Copilot: Asegúrese de que Copilot está activo y autenticado correctamente
- Volver a conectarse a Azure Cosmos DB: Pruebe a desconectar y volver a conectar la cuenta
Extensión que no implementa el archivo de instrucciones
- Actualización de la extensión: asegúrese de que tiene la versión más reciente de la extensión de Azure Cosmos DB.
- Comprobar permisos: compruebe que Visual Studio Code tiene permisos de escritura en la carpeta de perfiles de usuario
- Conexión manual: pruebe a conectarse manualmente a la cuenta de Azure Cosmos DB a través de la extensión.