Convert Figma logo to code with AI

casibase logocasibase

AI Cloud: โšก๏ธOpen-source AI LangChain-like RAG (Retrieval-Augmented Generation) knowledge database with web UI and Enterprise SSOโšก๏ธ, supports OpenAI, Azure, LLaMA, Google Gemini, HuggingFace, Claude, Grok, etc., chat bot demo: https://demo.casibase.com, admin UI demo: https://demo-admin.casibase.com

2,887
361
2,887
20

Top Related Projects

Integrate cutting-edge LLM technology quickly and easily into your apps

98,623

๐Ÿฆœ๐Ÿ”— Build context-aware reasoning applications

17,085

the AI-native open-source embedding database

LlamaIndex is a data framework for your LLM applications

Quick Overview

Casibase is an open-source AI knowledge database and chatbot platform. It combines the power of language models with a customizable knowledge base, allowing users to create AI assistants tailored to specific domains or use cases. Casibase supports multiple language models and offers features like semantic search and multi-turn conversations.

Pros

  • Customizable knowledge base for domain-specific AI assistants
  • Support for multiple language models, including OpenAI, Azure, and Hugging Face
  • User-friendly web interface for managing the knowledge base and interacting with chatbots
  • Open-source and self-hostable, providing greater control and privacy

Cons

  • Requires technical knowledge to set up and configure
  • Limited documentation compared to some commercial alternatives
  • May require significant resources for hosting and running language models locally
  • Still in active development, which may lead to frequent changes and potential instability

Getting Started

To get started with Casibase, follow these steps:

  1. Clone the repository:

    git clone https://github.com/casibase/casibase.git
    
  2. Navigate to the project directory:

    cd casibase
    
  3. Install dependencies:

    go mod tidy
    
  4. Build the project:

    go build
    
  5. Run Casibase:

    ./casibase
    
  6. Access the web interface at http://localhost:14000 and follow the setup wizard to configure your instance.

For more detailed instructions and configuration options, refer to the project's README and documentation on GitHub.

Competitor Comparisons

Integrate cutting-edge LLM technology quickly and easily into your apps

Pros of Semantic Kernel

  • More extensive documentation and examples
  • Larger community and support from Microsoft
  • Broader language support (C#, Python, Java)

Cons of Semantic Kernel

  • More complex architecture and setup
  • Steeper learning curve for beginners
  • Less focus on low-code/no-code solutions

Code Comparison

Semantic Kernel (C#):

var kernel = Kernel.Builder.Build();
var promptTemplate = "{{$input}}";
var function = kernel.CreateSemanticFunction(promptTemplate);
var result = await kernel.RunAsync("Hello, world!", function);

Casibase (JavaScript):

const casibase = new Casibase();
const result = await casibase.chat({
  messages: [{ role: "user", content: "Hello, world!" }],
});

Summary

Semantic Kernel offers a more comprehensive framework with extensive documentation and multi-language support, backed by Microsoft. However, it may be more complex for beginners. Casibase provides a simpler, more straightforward approach, particularly suitable for JavaScript developers and those seeking a low-code solution. The code comparison demonstrates the difference in complexity and setup between the two projects.

98,623

๐Ÿฆœ๐Ÿ”— Build context-aware reasoning applications

Pros of LangChain

  • More extensive and mature ecosystem with a wider range of integrations
  • Larger community and better documentation, making it easier for developers to get started and find support
  • Offers more flexibility and customization options for building complex AI applications

Cons of LangChain

  • Steeper learning curve due to its extensive features and abstractions
  • Can be overkill for simpler projects, potentially adding unnecessary complexity
  • Requires more setup and configuration compared to Casibase's out-of-the-box approach

Code Comparison

LangChain example:

from langchain import OpenAI, LLMChain, PromptTemplate

llm = OpenAI(temperature=0.9)
prompt = PromptTemplate(input_variables=["product"], template="What is a good name for a company that makes {product}?")
chain = LLMChain(llm=llm, prompt=prompt)
print(chain.run("colorful socks"))

Casibase example:

const casibase = require('casibase');

const client = new casibase.Client('YOUR_API_KEY');
const response = await client.chat('What is a good name for a company that makes colorful socks?');
console.log(response);

The code comparison shows that LangChain offers more granular control over the AI model and prompt structure, while Casibase provides a simpler, more straightforward API for quick implementation.

17,085

the AI-native open-source embedding database

Pros of Chroma

  • More mature project with higher GitHub stars and contributors
  • Extensive documentation and examples for various use cases
  • Strong focus on vector database functionality and embeddings

Cons of Chroma

  • Limited to Python ecosystem, less versatile for multi-language projects
  • Requires more setup and configuration compared to Casibase's all-in-one approach
  • Less emphasis on UI and visualization tools

Code Comparison

Chroma example:

import chromadb

client = chromadb.Client()
collection = client.create_collection("my_collection")
collection.add(
    documents=["This is a document", "This is another document"],
    metadatas=[{"source": "my_source"}, {"source": "my_source"}],
    ids=["id1", "id2"]
)

Casibase example:

import "github.com/casibase/casibase/object"

obj := &object.Object{
    Owner: "admin",
    Name:  "My Object",
    CreatedTime: util.GetCurrentTime(),
    Data:  "This is a document",
}
object.AddObject(obj)

Both repositories offer solutions for managing and querying data, but Chroma focuses more on vector databases and embeddings, while Casibase provides a broader set of features including authentication, visualization, and multi-language support. Chroma may be better suited for specialized machine learning projects, while Casibase offers a more comprehensive solution for general-purpose data management and analysis.

LlamaIndex is a data framework for your LLM applications

Pros of LlamaIndex

  • More extensive documentation and examples, making it easier for developers to get started
  • Broader range of integrations with popular LLM models and data sources
  • Active community with frequent updates and contributions

Cons of LlamaIndex

  • Steeper learning curve due to more complex architecture and features
  • Potentially higher resource requirements for large-scale applications
  • Less focus on UI components, requiring more custom development for user interfaces

Code Comparison

Casibase (Python):

from casibase import Casibase

cb = Casibase()
cb.add_document("doc1.txt", "This is a sample document.")
results = cb.search("sample")

LlamaIndex (Python):

from llama_index import GPTSimpleVectorIndex, Document

documents = [Document("This is a sample document.")]
index = GPTSimpleVectorIndex.from_documents(documents)
response = index.query("sample")

Both libraries provide simple ways to index and search documents, but LlamaIndex offers more advanced querying capabilities and integration with various LLM models.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

รฐยŸย“ยฆรขยšยกรฏยธย Casibase

Open-source AI LangChain-like RAG (Retrieval-Augmented Generation) knowledge database with web UI and Enterprise SSO, supports OpenAI, Azure, LLaMA, Google Gemini, HuggingFace, Claude, Grok, etc.,

semantic-release docker pull casbin/casibase GitHub Workflow Status (branch) GitHub Release Docker Image Version (latest semver)

Go Report Card license GitHub issues GitHub stars GitHub forks Crowdin Discord

Online Demo

Chat Bot

Admin UI

Documentation

https://casibase.org

Architecture

Casibase contains 2 parts:

NameDescriptionLanguage
FrontendUser interface for CasibaseJavaScript + React
BackendServer-side logic and API for CasibaseGolang + Beego + Python + Flask + MySQL

0-Architecture-casibase

Supported Models

Language Model

ModelSub TypeLink
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

Embedding Model

ModelSub TypeLink
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

Documentation

https://casibase.org

Install

https://casibase.org/docs/basic/server-installation

How to contact?

Discord: https://discord.gg/5rPsrAzK7S

Contribute

For Casibase, if you have any questions, you can give issues, or you can also directly start Pull Requests(but we recommend giving issues first to communicate with the community).

License

Apache-2.0