L'installation de packages NPM dans les fonctions Edge Supabase Si vous êtes familier avec les fonctions Edge Supabase, vous savez peut-être que l'installation de packages NPM n'est pas aussi simple que dans une application Node.js ou Express typique. Cependant, il existe plusieurs méthodes pour inclure des packages NPM dans les fonctions Edge Supabase. Dans ce guide, je vais montrer comment utiliser le fichier importe_map.json pour y parvenir.
Assurez-vous que Docker est installé sur votre machine.
Choisissez votre répertoire et exécutez la commande suivante:
npx supabase init Cela créera un dossier supabase dans votre répertoire.
Exécutez la commande suivante pour démarrer le projet:
npx supabase startCe processus peut prendre quelques minutes car il tire les images Docker et démarre les conteneurs.
Ouvrez le répertoire dans votre éditeur de code préféré et exécutez la commande suivante pour créer une nouvelle fonction SUPABASE Edge:
npx supabase functions new < your-function-name > Cela créera un dossier avec le nom de votre fonction à l'intérieur du répertoire functions .
Vous pouvez installer n'importe quel package NPM. Pour cet exemple, nous allons installer des packages Langchain pour créer un pipeline de chiffon de base.
import_map.json Créez un fichier nommé import_map.json dans votre dossier functions et ajoutez le bloc JSON suivant:
{
"imports" : {
"@supabase/supabase-js" : " npm:@supabase/[email protected] " ,
"langchain/" : " https://esm.sh/[email protected]/ " ,
"@langchain/openai/" : " https://esm.sh/@langchain/[email protected]/ " ,
"@langchain/core/" : " https://esm.sh/@langchain/[email protected]/ " ,
"@langchain/community/" : " https://esm.sh/@langchain/[email protected]/ "
}
}Si vous souhaitez utiliser des sous-modules d'un package NPM, assurez-vous d'ajouter A
/à la fin du nom du package. Pour référence, voir l'importation de@supabase/supabase-jset les packageslangchainrestants.
Assurez-vous que votre projet est lié à votre projet Cloud Supabase.
Pour déployer votre fonction Edge sur Supabase, exécutez la commande suivante:
npx supabase functions deployCette commande déploiera toutes les fonctions.
Pour déployer une fonction spécifique, utilisez:
npx supabase functions deploy < function-name >