Modules
Extend Clarifai’s UIs and perform customized backend processing
Modules are custom plugins that provide both UI elements and the ability to perform some computation around our API. Modules enable you to extend the Clarifai UIs, augment backend processing capabilities, and build customized solutions quickly and easily.
They offer flexibility, integration possibilities, scalability, and the opportunity to tailor the Clarifai platform to specific use cases, empowering you to deliver enhanced experiences and value to your machine learning projects.
With modules, you can build a complete AI solution in your app—alongside the inputs, datasets, concepts, models, workflows, and other AI resources needed to solve a problem.
Modules UI Integration
Modules are integrated into our overall UI in a composable way. They are implemented as Python programs that should be treated as API clients to our API.
After integration, modules have sidebar entries that show up on the portal’s collapsible left sidebar, just like the rest of our other navigation entries.
We currently support creating modules using Streamlit, which is an open-source, Python-based framework that lets you create interactive web applications for data science and machine learning projects. The framework is designed to simplify the process of building and sharing custom web applications by providing a straightforward and intuitive interface.
At launch, we have focused on Streamlit. Nonetheless, our modules are flexible enough to integrate with other UI frameworks that render from the server side in the future. Please let us know which other ones you’d love to see.
Modules Features
Here are some notable features of Clarifai modules.
- UI Extension
Modules allow you to seamlessly integrate custom functionality into the Clarifai user interface (UI). You can create modules that add new features, widgets, or views to the UI, providing users with an expanded set of tools and options. This extensibility enables you to tailor the Clarifai UI to match your specific requirements or industry needs.
- Custom Workflows
With modules, you can design and implement custom workflows within the Clarifai platform. You have the flexibility to define specific steps, actions, or processes that users can execute within the UI. This capability enables you to create streamlined and efficient workflows that align with your unique business processes or use cases.
- Backend Processing
Modules also empower you to perform backend processing tasks within the Clarifai infrastructure—leveraging the power and ecosystem of Python. You can develop modules that integrate with the Clarifai API, enabling advanced data processing, analysis, or model training. This functionality allows you to create, share, and use your AI resources within the Clarifai’s AI Lake while maintaining control and customization of the experience.
- Integration with External Systems
Modules can facilitate seamless integration with external systems and services. You can create modules that interact with other APIs or data sources, enabling data exchange, synchronization, or integration with third-party tools. This integration capability enhances the interoperability of the Clarifai platform and expands its potential use cases.
- Tailored Solutions
By leveraging modules, you can build tailored solutions on top of the Clarifai platform. You have the freedom to develop modules that address specific business needs, industry requirements, or niche use cases. This customization allows you to deliver unique value propositions to your users or customers, setting you apart from competitors.
- Developer Community and Ecosystem
Modules foster an active developer community and ecosystem around the Clarifai platform. Users can create and share their modules, contributing to a rich library of reusable components and solutions. This collaborative environment encourages innovation, knowledge sharing, and the development of diverse applications that extend the capabilities of the Clarifai platform.
- Scalability and Future-Proofing
With modules, you can design your solutions with scalability and future-proofing in mind. You can architect modules that can adapt and evolve as your business needs change, or as the Clarifai platform evolves. This scalability ensures that your custom functionalities and integrations remain compatible and effective over time.
Examples
- LLM Battleground—Evaluate and compare multiple Large Language Models (LLMs) simultaneously. You do not need to log in to start using it. Learn how to use it here.
- Chatbot—A conversational chatbot that remembers the conversation as you go.
- DocQA—Upload documents such as PDFs and chat with your data. Watch this video to see it in action. You can also learn how to use it here.
📄️ Create and Install Modules
Learn how to create and install your modules
📄️ Manage Your Modules
Learn how to manage your modules
📄️ Environment Variables and Secrets
Keep your credentials secure and build powerful modules
📄️ OCR Evaluation Module
Keep your credentials secure and build powerful modules
📄️ Collectors
Capture inputs used for making predictions in your app
📄️ Hyperparameter Sweeps
Learn about our hyperparameter sweeps module