Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

Comando /consulta

La /query El comando ayuda a generar queries a partir de un lenguaje natural contra un clúster MongoDB conectado. La extensión de MongoDB para Github Copilot proporciona información de esquema subyacente de las colecciones relevantes a GitHub Copilot para generar una respuesta. Si no especificas una colección en tu prompt, el chat te pedirát seleccionar una colección relevante.

Cuando el LLM genera una query, puedes abrir la query en un archivo playground o ejecutar la query directamente en tu colección.

Puede configurar la Extensión MongoDB para Github Copilot para incluir valores de campo de muestra de su colección con el comando /query. Cuando MongoDB incluye documentos de muestra con el comando /query, el modelo de IA recibe ejemplos de datos reales, lo que le ayuda a generar consultas más precisas.

Los documentos de muestra están deshabilitados por defecto. Siga los siguientes pasos para habilitar la inclusión de valores de campo de muestra:

1
2

Cuando se activa, los documentos de muestra se pasan automáticamente al modelo con el siguiente comportamiento:

  • Se incluyen hasta 3 documentos de muestra para proporcionar contexto.

  • Si incluir 3 documentos de muestra supera el tamaño máximo de contexto para el modelo de IA, la Extensión MongoDB para Github Copilot solo incluye 1 documento.

  • MongoDB limita los campos de arreglo en los documentos de muestra a los primeros 3 elementos.

  • MongoDB trunca los campos de string a los primeros 20 caracteres para reducir el tamaño del contexto, al tiempo que preserva la información de la estructura de datos.

Considere la colección users en el Base de datos de muestra de Mflix. Cada documento de la colección tiene la siguiente estructura:

{
_id: {
"$oid": "59b99db4cfa9a34dcd7885b6"
},
name: "Kayden Washington",
email: "KW@email.com",
password: "11222021"
}

Una vez que te conectes a la implementación que contiene la colección users, puedes pedirle al chat de GitHub Copilot que genere una query para encontrar el documento en la colección users que tiene el valor de name en Kayden Washington.

@MongoDB /query In the sample_mflix database, find a document in the
users collection with the name of Kayden Washington.

El chat de GitHub Copilot utiliza la extensión MongoDB para GitHub Copilot para generar la siguiente consulta utilizando el conocimiento del esquema de su base de datos:

use(`sample_mflix`);
db.getCollection('users').findOne({ name: 'Kayden Washington' });

Una vez que la MongoDB Extension para Github Copilot genera la query, puedes optar por ejecutar la query directamente o abrir la query en un playground.

Captura de pantalla del copiloto generando una consulta
haga clic para ampliar

También puede usar la extensión de MongoDB para Github Copilot para compilar pipelines de agregación. Considere la colección users en la Base de Datos de Ejemplo Mflix. Cada documento de la colección tiene la siguiente estructura:

{
_id: {
"$oid": "59b99db4cfa9a34dcd7885b6"
},
name: "Kayden Washington",
email: "KW@email.com",
password: "11222021"
}

Una vez que te conectes a la implementación que contiene la colección users, puedes pedirle a GitHub Copilot Chat que genere un pipeline de agregación.

@MongoDB /query Generate an aggregation pipeline on the users
collection that first sorts documents alphabetically by name and then
removes the password field from each document.

La extensión MongoDB para Github Copilot genera la siguiente canalización de agregación:

use('sample_mflix');
db.getCollection('users').aggregate([
{ $sort: { name: 1 } },
{ $project: { password: 0 } }
]);

Una vez que la extensión MongoDB para Github Copilot genera la query, puedes elegir ejecutar el pipeline directamente o abrir el pipeline en un playground.

Captura de pantalla de Copilot generando una canalización de agregación
haga clic para ampliar

También puede mejorar gradualmente la pipeline de agregación:

@MongoDB /query Add a stage to my pipeline that adds a username field
to each document containing the user's email without the
email domain.

La extensión MongoDB para Github Copilot devuelve el siguiente pipeline de agregación:

use('sample_mflix');
db.getCollection('users').aggregate([
{ $sort: { name: 1 } },
{ $project: { password: 0 } },
{ $addFields: { username: { $arrayElemAt: [{ $split: ["$email", "@"] }, 0] } } }
]);
Captura de pantalla de copiloto construyendo iterativamente en una pipeline de agregación
haga clic para ampliar

Volver

Extensión de MongoDB para GitHub Copilot

En esta página