These Docs will help you get started with Naas quickly, guide you through advanced features, and explain the core concepts that make Naas unique.
This documentation is in
beta. It may change frequently. To propose changes or enhancements, please create a GitHub Issue.
Naas (Notebooks as a service) is a low-code open source data & AI platform that empowers anyone working with data (analysts, scientists, and engineers) to create powerful data solutions combining automation, analytics, and AI from the comfort of their Jupyter notebooks.
The platform upgrades notebooks with 3 low-code layers to get things done faster: features, drivers, and templates.
Our mission is to make data & AI product building accessible to anyone.
With Naas platform, you can quickly and easily create a wide variety of data-driven products and applications.
Naas can be used to generate static reports such as PDFs, slides, and spreadsheets. You can create Jupyter notebooks to process and analyze data and then use a library like
reportlabto generate a PDF report. Similarly, you can use
openpyxlto generate Excel spreadsheets. Naas provides a simple way to schedule and automate the generation of these reports using the Naas Scheduler.
Naas can be used to create dynamic reports and dashboards using popular open-source libraries such as Plotly Dash, Panel, and Streamlit. You can build interactive web applications that allow users to interact with data and gain insights in real-time. Naas provides a simple way to deploy these applications to the web, so you can share them with your team or customers.
Naas can be used to build APIs using popular Python frameworks such as FastAPI and Flask. You can create Jupyter notebooks to process and analyze data and then use FastAPI or Flask to create a RESTful API. Naas provides a simple way to deploy these APIs to the cloud, so you can integrate them into your applications.
Naas provides a simple way to create alerting systems that notify users via Slack, Teams, WhatsApp, or email. You can use Jupyter notebooks to monitor data and trigger alerts based on specific conditions. Naas provides integrations with popular messaging services, making it easy to send alerts to your team.
Naas can be used to build AI systems such as search and conversational bots that use natural language processing (NLP) to understand and respond to user queries. You can use Jupyter notebooks to train and fine-tune large language models such as OpenAI's GPT-3 on your company's data. Naas provides a simple way to deploy these models to the cloud, so you can integrate them into your applications.
Contact Jeremy on LinkedIn or via email [email protected], if you need guidance in building those solutions for your organization.
Naas Cloud Infrastructure is the fastest and easiest way to get you started!
Try all of Naas's features for free using Naas Cloud a stable environment, without having to install anything.
The easiest way to go is simply to find the right templates for you. Once you have found the templates that suits your needs (if you don't, feel free to request new templates here), you can start leveraging Naas services to build your solutions. But of course, you can also come with your own notebooks and scripts.
Naas creates a dynamic production environment for your Notebooks. Each time you run the following formulas in a notebook, it will be sent into the "__production__" folder on your Naas server for execution.
To get started, create a folder, open a notebook, and import Naas :
Send in production this notebook and run it, every day at 9:00
naas.scheduler.add(cron="0 9 * * *")
Send in production any file type like
test.csvas a dependency:
Copy in production any secret key :
Remove the previous line and get your secret key with :
This allows you to push your notebook in production without sensitive data getting exposed.
Copy in production this notebook and allow to run it by calling the returned URL:
Call the URL with your navigator you will get a message and see the notebook has run.
If you want to download the notebook result instead, add this line:
Copy in production this asset ( file ) and allow to get it by calling the returned url:
link = naas.asset.add("tesla-chart.html")
Send an email notification to anyone, to notify about data changes, alert on notebooks operations, etc...
# Get link var from previous step
email = "[email protected]"
subject = "The tesla action is going up"
content = "check in the link the chart data maide from fresh dataset : " + link
naas.notification.send(email=email, subject=subject, content=content)
Automate and schedule data workflows, streamlining your data processing and saving you time and effort using Notebooks.
Start with this simple dummy pipeline snippet and learn more on the dedicated docs page.
from naas.pipeline.pipeline import (Pipeline, DummyStep,End)
pipeline = Pipeline()
step1 = DummyStep("Notebook 1")
step2 = DummyStep("Notebook 2")
step3 = DummyStep("Notebook 3")
pipeline >> step1 >> step2 >> step3 >> End()
If at any time you are lost, you need help, or just want some info!
That will open a chat box with us
Show a button to quickly open this documentation from Jupyter
As the field of data & AI space continues to evolve, it's becoming increasingly clear that companies need experts who can not only build data products and models, but also deploy and maintain them at scale. By hiring a Naas expert, you can ensure that your data products are built to the highest standards, and that they are optimized for your specific business needs.
Whether you need to build a chatbot, extract insights from text data, or perform sentiment analysis at scale, a Naas expert can help you achieve your goals with greater speed and efficiency.
So if you're ready to take your data products to the next level, consider hiring a Naas expert today. Contact Jeremy on LinkedIn or via email [email protected] now to learn more!
We value all kinds of contributions - not just code. We are particularly motivated to support new contributors and people who are looking to learn and develop their skills.
You can reach out to us through the following channels: