Passer au contenu principal

Aperçu

Casibase est un logiciel open source de base de connaissances de domaine, de messagerie instantanée et de forum alimenté par ChatGPT.

Caractéristiques de Casibase

  1. Développé en Golang avec une architecture front-end et back-end séparée, Casibase prend en charge une haute concurrence, offre une interface d'administration basée sur le Web et prend en charge plusieurs langues (chinois, anglais).

  2. Casibase prend en charge la connexion via des applications tierces telles que GitHub, Google, QQ, WeChat, etc., et l'extension des connexions tierces via des plugins.

  3. Gestion des connaissances basée sur l'intégration et l'ingénierie des prompts, Casibase prend en charge des méthodes d'intégration et des modèles linguistiques personnalisables.

  4. Casibase s'intègre aux systèmes existants via la synchronisation de bases de données, permettant aux utilisateurs de passer en douceur à Casibase.

  5. Casibase prend en charge les principales bases de données : MySQL, PostgreSQL, SQL Server, etc., et l'extension de nouvelles bases de données via des plugins.

  6. Casibase est un puissant outil de gestion d'actifs qui permet de se connecter facilement aux actifs via les protocoles RDP, VNC et SSH, traitant efficacement les connexions à distance aux machines.

  7. La fonction d'audit de journaux de sécurité de Casibase vous permet de suivre et surveiller facilement les connexions à distance, en enregistrant en détail l'heure de début de connexion, la durée et d'autres détails pertinents, tout en capturant et analysant les journaux API des opérations Casdoor, renforçant la sécurité et la transparence des opérations.

  8. Casibase prend en charge la gestion des bases de données. La fonction de gestion des bases de données de Casibase vous permet de vous connecter, gérer et organiser facilement les bases de données, tout en contrôlant l'accès, simplifiant la gestion des utilisateurs et l'autorisation des ressources de base de données.

Comment ça marche

Étape 0 (Connaissances préalables)

Le processus de récupération des connaissances dans Casibase est basé sur l'intégration et l'ingénierie des prompts, il est donc fortement recommandé de se familiariser brièvement avec le fonctionnement de l'intégration. Voici une introduction à l'intégration.

embedding

Étape 1 (Importation des connaissances)

Pour commencer avec Casibase, les utilisateurs doivent importer des connaissances et créer une base de connaissances de domaine en suivant ces étapes :

  1. Configuration du stockage : Dans le tableau de bord de Casibase, les utilisateurs doivent d'abord configurer les paramètres de stockage. Cela implique de spécifier le système de stockage pour les fichiers liés aux connaissances (documents, images ou toute autre donnée pertinente). Les utilisateurs peuvent choisir parmi plusieurs options de stockage en fonction de leurs préférences et besoins.

  2. Téléchargement de fichiers dans le stockage : Une fois le stockage configuré, les utilisateurs peuvent télécharger des fichiers contenant des connaissances de domaine dans le système de stockage configuré. Ces fichiers peuvent être de divers formats, tels que des documents texte, des images ou des fichiers de données structurées (comme CSV ou JSON).

  3. Sélection de la méthode d'intégration pour la génération de connaissances : Après le téléchargement des fichiers, les utilisateurs peuvent sélectionner la méthode d'intégration pour générer des connaissances et leurs vecteurs correspondants. Les intégrations sont des représentations numériques de contenu textuel ou visuel qui facilitent une recherche de similarité efficace et l'analyse des données.

conseil

Comment les connaissances sont-elles intégrées ?

  • Pour les données textuelles : les utilisateurs peuvent choisir diverses méthodes d'intégration, telles que Word2Vec, GloVe ou BERT, pour transformer les connaissances textuelles en vecteurs significatifs.

  • Pour les données visuelles : si les fichiers téléchargés contiennent des images ou du contenu visuel, les utilisateurs peuvent choisir des techniques d'intégration d'images, comme l'extraction de caractéristiques basée sur CNN, pour créer des vecteurs représentatifs.

  • Plus de méthodes à venir...

En suivant ces étapes, les utilisateurs peuvent remplir leur base de connaissances de domaine avec des informations pertinentes et des intégrations correspondantes qui seront utilisées pour une recherche, un regroupement et une récupération efficaces des connaissances dans Casibase. Le processus d'intégration permet au système de comprendre le contexte et les relations entre différents fragments de connaissances, permettant une gestion et une exploration des connaissances plus efficaces et informatives.

Étape 2 (Récupération des connaissances)

Après avoir importé vos connaissances de domaine, Casibase les transforme en vecteurs et stocke ces vecteurs dans une base de données vectorielle. Cette représentation vectorielle active des fonctionnalités puissantes telles que la recherche par similarité et la récupération efficace d'informations pertinentes. Vous pouvez rapidement trouver des données pertinentes basées sur le contexte ou le contenu, effectuer des requêtes avancées et découvrir des informations précieuses dans vos connaissances de domaine.

Étape 3 (Construction du prompt)

Casibase effectue une recherche de similarité parmi les vecteurs de connaissances stockés pour trouver les meilleures correspondances avec la requête de l'utilisateur. En utilisant les résultats de recherche, il crée un modèle de prompt pour le modèle linguistique pour formuler une question spécifique. Cela garantit des réponses précises et contextuellement pertinentes basées sur les connaissances de domaine dans Casibase.

Étape 4 (Atteinte de l'objectif)

À ce stade, en utilisant Casibase, vous avez réussi à obtenir les connaissances dont vous avez besoin. En transformant de manière innovante les connaissances de domaine en vecteurs et en les combinant avec des modèles linguistiques puissants comme ChatGPT, Casibase fournit des réponses précises et pertinentes à vos requêtes. Cela vous permet d'accéder efficacement et d'utiliser des informations spécifiques au domaine stockées dans Casibase, répondant facilement à vos besoins en connaissances.

Étape 5 (Réglage optionnel)

Si vous trouvez que les résultats ne sont pas entièrement satisfaisants, vous pouvez essayer d'obtenir de meilleurs résultats en :

  • Ajustant les paramètres du modèle linguistique

  • Posant plusieurs questions

  • Optimisant les fichiers originaux

En utilisant ces options de réglage, vous pouvez améliorer l'efficacité de la gestion des connaissances dans Casibase, en assurant un meilleur alignement du système avec vos objectifs et en fournissant des informations plus précises et informatives.

Conseils

Autres méthodes pour optimiser les résultats (peuvent nécessiter des modifications du code source) :

  • Mise à jour des résultats d'intégration : amélioration de la représentation des connaissances en ajustant les résultats d'intégration pour les connaissances de domaine.

  • Modification des modèles de prompt : en personnalisant les prompts, vous pouvez obtenir des réponses plus précises du modèle linguistique.

  • Exploration de différents modèles linguistiques : essayez différents modèles pour trouver le plus adapté à vos besoins de génération de réponses.

Démonstration en ligne

Sites en lecture seule (toute modification échouera)

Sites inscriptibles (les données originales sont restaurées toutes les 5 minutes)

Connexion administrateur global :

  • Nom d'utilisateur : admin
  • Mot de passe : 123

Architecture

Casibase comporte 2 parties :

NomDescriptionLangueCode source
Interface utilisateurInterface utilisateur de l'application CasibaseJavaScript + Reacthttps://github.com/casibase/casibase/tree/master/web
Back-endLogique côté serveur et API de CasibaseGolang + Beego + MySQLhttps://github.com/casibase/casibase

Architecture

Modèles pris en charge

Modèles linguistiques

ModèleSous-typesLien
OpenAIgpt-4-32k-0613, gpt-4-32k-0314, gpt-4-32k, gpt-4-0613, gpt-4-0314, gpt-4, gpt-3.5-turbo-0613, gpt-3.5-turbo-0301, gpt-3.5-turbo-16k, gpt-3.5-turbo-16k-0613, gpt-3.5-turbo, text-davinci-003, text-davinci-002, text-curie-001, text-babbage-001, text-ada-001, text-davinci-001, davinci-instruct-beta, davinci, curie-instruct-beta, curie, ada, babbageOpenAI
Hugging Facemeta-llama/Llama-2-7b, tiiuae/falcon-180B, bigscience/bloom, gpt2, baichuan-inc/Baichuan2-13B-Chat, THUDM/chatglm2-6bHugging Face
Claudeclaude-2, claude-v1, claude-v1-100k, claude-instant-v1, claude-instant-v1-100k, claude-v1.3, claude-v1.3-100k, claude-v1.2, claude-v1.0, claude-instant-v1.1, claude-instant-v1.1-100k, claude-instant-v1.0Claude
OpenRoutergoogle/palm-2-codechat-bison, google/palm-2-chat-bison, openai/gpt-3.5-turbo, openai/gpt-3.5-turbo-16k, openai/gpt-4, openai/gpt-4-32k, anthropic/claude-2, anthropic/claude-instant-v1, meta-llama/llama-2-13b-chat, meta-llama/llama-2-70b-chat, palm-2-codechat-bison, palm-2-chat-bison, gpt-3.5-turbo, gpt-3.5-turbo-16k, gpt-4, gpt-4-32k, claude-2, claude-instant-v1, llama-2-13b-chat, llama-2-70b-chatOpenRouter
ErnieERNIE-Bot, ERNIE-Bot-turbo, BLOOMZ-7B, Llama-2Ernie
iFlytekspark-v1.5, spark-v2.0iFlytek
ChatGLMchatglm2-6bChatGLM
MiniMaxabab5-chatMiniMax
Localcustom-modelLocal Computer

Modèles d'intégration

ModèleSous-typesLien
OpenAIAdaSimilarity, BabbageSimilarity, CurieSimilarity, DavinciSimilarity, AdaSearchDocument, AdaSearchQuery, BabbageSearchDocument, BabbageSearchQuery, CurieSearchDocument, CurieSearchQuery, DavinciSearchDocument, DavinciSearchQuery, AdaCodeSearchCode, AdaCodeSearchText, BabbageCodeSearchCode, BabbageCodeSearchText, AdaEmbeddingV2OpenAI
Hugging Facesentence-transformers/all-MiniLM-L6-v2Hugging Face
Cohereembed-english-v2.0, embed-english-light-v2.0, embed-multilingual-v2.0Cohere
ErniedefaultErnie
Localcustom-embeddingLocal Computer