Boost Productivity with Generative Code Assistants
By Yuval Zukerman2023-10-316 min read
Data scientists are the center of data-driven innovation. You need data scientists to harness the power of Generative AI (GenAI) to drive your future success. So make sure you don't waste their time. You need to make them productive. Domino spent much of the last decade making that happen by removing barriers to data, infrastructure, and scaling. With our Fall 2023 release, we are happy to add a significant productivity boost to Domino by integrating Jupyter AI into Domino Workspaces. Jupyter AI gives data scientists an on-demand AI coding assistant to help them save time on mundane tasks and simplify complex ones. Let's dive in!
A Choice of Coding Assistants
Last year, GitHub's Copilot captured imaginations by showing how a GenAI model can impact how developers and data scientists write code. Like a pair programmer, Copilot can write boilerplate code, help you avoid mistakes, and even document your code. That saves a lot of time. McKinsey found that tasks like documentation and code generation can save 45% from a coder's effort performing those tasks. Those are meaningful numbers; naturally, you can use Copilot on Domino.
Copilot, however, is limited to Microsoft's Visual Studio Code. It relies on GitHub's Large Language Model (LLM) pre-trained on GitHub-hosted code. Copilot is fantastic, but there are quite a few programming languages that Copilot does not support.
If your team wants help with R, Julia, SAS, or MATLAB or prefers to use a programming tool other than Visual Studio Code, you need to look elsewhere. Your security team may also have concerns about how GitHub may or may not use your code to improve the Copilot model.
The good news is that OpenAI's GPT and similarly powerful models from Cohere, AI21, and others offer LLM alternatives to help you code. You can even host one of many coder LLMs to ensure your intellectual property remains safe. However, you need a flexible user interface that lets you choose from these models and others based on how well they work for your use case. Now you have an answer: Jupyter AI, from the team behind the wildly popular Jupyter Notebooks and JupyterHub. Better yet, that's all available in Domino for your data scientists to use.
Why Jupyter AI Makes Sense
Jupyter AI is not just another AI integration. It provides users with interfaces for interaction and experimentation with multiple LLMs. It offers a common bridge to the LLMs — not a new standalone LLM. Jupyter AI comes with several distinctive characteristics.
- Vendor Agnostic: Use the model provider you prefer. Jupyter AI has connectivity to leading providers, as well as to models hosted by Huggingface. You avoid vendor lock-in to a particular LLM or a specific provider.
- LLM Plug and Play: Users only need to know how to use Jupyter AI. There is no need to learn each LLM's unique commands or behaviors.
- No Black Box: Users can view Jupyter AI's prompts to the LLM and its outputs. There is no secret sauce. All interactions are traceable and stored securely, making such exchanges transparent and reproducible.
- Control: Jupyter AI waits for users to ask for the LLM's help. The environment does not 'look' at your code and will not offer unwanted advice or ideas. Since LLMs may charge you for each request, you also retain control over when to pay for their advice.
- Seamless Integration with JupyterLab: Jupyter AI's interface is tucked into a side tab. You can use it when you want to, and it does not impose itself nor distracts you from your work.
Jupyter AI provides several interaction options with your preferred LLM:
- Magics: These are special commands inside your Jupyter Notebook cells. Magics enable users to send AI commands that work with the code inside the cell.
- Chat Interface: Users can use prompts with the LLM just like they do with Bard and ChatGPT. They can ask for advice or select to send code from their notebook as part of their query. The user can then use the LLM's response to replace or correct their code.
- Questioning Files: Why don't you let the LLM RTFM for you? Jupyter AI can now read a file collection and offer a search engine you can query about their contents. Having your own search capability is incredibly helpful to data scientists looking for code or business rule references. Did we mention the productivity boost?
Enterprise-Ready Jupyter on Domino
JupyterLab and Jupyter are two of the most popular development environments on Domino. Now, with Jupyter AI on Domino, corporate customers can develop faster and still benefit from Domino's essential strengths. Reproducibility is at the heart of Domino's platform. Domino versions underlying software package environments, project source code, and data snapshots. And that includes code you generate with Jupyter AI. We offer collaboration tools that simplify code reuse with teams across the organization. Domino offers enterprises a choice in tools that help get AI done faster, responsibly, and on budget. As an open, flexible platform, we are excited to give enterprises even more control over their projects with Jupyter AI.
In a nutshell, Jupyter AI is shaping up to be a game-changer for data scientists. It offers them help from the LLM provider of your choice with their preferred programming language. Jupyter AI provides multiple ways to interact - inside and outside a Jupyter notebook. But most importantly, Jupyter AI saves your team time and makes them more productive. With AI innovations emerging at blistering speed, the last thing you can afford to do is fall behind. Try Jupyter AI in Domino today!
As Domino's content lead, Yuval makes AI technology concepts more human-friendly. Throughout his career, Yuval worked with companies of all sizes and across industries. His unique perspective comes from holding roles ranging from software engineer and project manager to technology consultant, sales leader, and partner manager.
Subscribe to the Domino Newsletter
Receive data science tips and tutorials from leading Data Science leaders, right to your inbox.