Website | Docs | Community Slack | Contribute
MindsDB is the middleware for building custom AI, enabling smarter organizations.
We believe AI will help every company thrive, but off-the-shelf, generic AI usually doesn’t completely meet their needs. With MindsDB’s nearly 200 integrations, any developer can create AI customized for their purpose, faster and more securely. Their AI systems will constantly improve themselves — using companies’ own data, in real-time.
MindsDB has introduced an abstraction for AI development utilizing "enhanced SQL" syntax, a language familiar to developers worldwide:
🎯 Solutions | ⚙️ SQL Query Examples |
---|---|
🤖 Fine-Tuning | FINETUNE mindsdb.hf_model FROM postgresql.table; |
📚 Knowledge Base | CREATE KNOWLEDGE_BASE my_knowledge FROM (SELECT contents FROM drive.files); |
🔍 Semantic Search | SELECT * FROM rag_model WHERE question='What product is best for treating a cold?'; |
⏱️ Real-Time Forecasting | SELECT * FROM binance.trade_data WHERE symbol = 'BTCUSDT'; |
🕵️ Agents | CREATE AGENT my_agent USING model='chatbot_agent', skills = ['knowledge_base']; |
💬 Chatbots | CREATE CHATBOT slack_bot USING database='slack',agent='customer_support'; |
⏲️ Time Driven Automation | CREATE JOB twitter_bot ( <sql_query1>, <sql_query2> ) START '2023-04-01 00:00:00'; |
🔔 Event Driven Automation | CREATE TRIGGER data_updated ON mysql.customers_data (sql_code) |
Enrich datastores by passing new data through an AI-model and writing results back in the database, this can be solved in a few lines of AI-SQL. Here is a reference architecture:
Let's look at automating shopify orders analysis:
---This query creates a job in MindsDB to analyze Shopify orders.
---It predicts customer engagement scores based on recent completed orders
---and inserts these insights into a customer_engagement table.
---The job runs every minute, providing ongoing updates to the engagement scores.
CREATE JOB mindsdb.shopify_customer_engagement_job AS (
-- Insert into a table insights about customer engagement based on recent Shopify orders
INSERT INTO shopify_insights.customer_engagement (customer_id, predicted_engagement_score)
SELECT
o.customer_id AS customer_id,
r.predicted_engagement_score AS predicted_engagement_score
FROM shopify_data.orders o
JOIN mindsdb.customer_engagement_model r
WHERE
o.order_date > LAST
AND o.status = 'completed'
LIMIT 100
)
EVERY minute;
To install locally or on-premise, pull the latest Docker image:
docker pull mindsdb/mindsdb
or, use pip:
pip install mindsdb
MindsDB allows querying hundreds of data sources, such as databases (both relational and non-relational), data warehouses, streams, and SaaS application data, using standard SQL. This capability stems from MindsDB’s unique ability to translate SQL into real-time data requests. You can find the list of all supported integrations here.
You can find the complete documentation of MindsDB at docs.mindsdb.com.
If you found a bug, please submit an issue on GitHub.
To get community support, you can:
- Post a question at MindsDB Slack community.
- Ask for help at our GitHub Discussions.
- Ask a question at Stackoverflow with a MindsDB tag.
If you need commercial support, please contact MindsDB team.
A great place to start contributing to MindsDB is to check our GitHub projects 🏁
- Community contributor's dashboard tasks.
- First timers only issues, if this is your first time contributing to an open source project.
We are always open to suggestions, so feel free to open new issues with your ideas, and we can guide you!
Being part of the core team is accessible to anyone who is motivated and wants to be part of that journey! If you'd like to contribute to the project, refer to the contributing documentation.
This project is released with a Contributor Code of Conduct. By participating in this project, you agree to follow its terms.
Also, check out the rewards and community programs.
Made with contributors-img.
Join our Slack community and subscribe to the monthly Developer Newsletter to get product updates, information about MindsDB events and contests, and useful content, like tutorials.
For detailed licensing information, please refer to the LICENSE file