Documentation

Smarter Architecture at a glance

  • Scalable serverless Kubernetes compute infrastructure that is largely self-maintaining.
  • Countermeasures for common Internet and web intrusion strategies including SQL injection, cross-site request forgeries, brute force password attacks, distributed denial of service, cross-site scripting, clickjacking, host header corruptions. Additionally, Smarter goes to great pains to minimize its attack surface, primarily by only opening ports 80 and 443 to the public.
  • Python-Django customer web dashboard application for developing plugin-based API's deployed to custom domains.
  • LangChain managed LLM API requests. This provides a layer of abstraction between Smarter and underlying LLM vendor providers, and it also provides a simple means of standardizing Smarter customers' API format.
  • React sandbox chat UI for prototyping pre-production APIs. Also works as a skinnable stand-in production UI if customers want this.
  • customer api logging architecture implemented with Django models, signals and Celery tasks
  • Team management features
  • Configurable use-based billing features based on api calls as well as plugin usage.

Python Django

Most of Smarter is developed using Python's Django web framework with the following noteworthy additions:

  • Django-rest-knox , used for creating secure, performant REST APIs.
  • Django Celery. robust asynchronous compute layer using Celery, Redis and Kubernetes which can be leveraged for scheduled tasks like automated reports as well as real-time compute-intensive functions.
  • Pydantic , for extending Django's settings module to facilitate CI-CD friendly configuration data from multiple sources: environment variable, terraform, Kubernetes secrets, Github Actions secrets, etc.
  • Pandas, NumPy, SciPy and Levenshtein
  • OpenAI
  • LangChain

ReactJS chat application

The chat app in the dashboard sandbox is written in React. Complete source code and documentation is located here .

React app that leverages Vite.js , @chatscope/chat-ui-kit-react , and react-pro-sidebar .

Django Integration

Be aware that there are many considerations for getting React to work inside a Django project. You can read more here .

Webapp design features

  • robust, highly customizable chat features
  • A component model for implementing your own highly personalized OpenAI apps
  • Skinnable UI for each app
  • Includes default assets for each app
  • Small compact code base
  • Robust error handling for non-200 response codes from the custom REST API
  • Handles direct text input as well as file attachments
  • Info link to the OpenAI API official code sample
  • Build-deploy managed with Vite

Smarter REST API

Source code is located here

Not to be confused with Smarter's flagship product, customer-implemented custom REST API's, Smarter additionally has its own REST API, which is a Python Django project implementing Querium's proprietary Plugin model, along with additional models for commercializing the service.

API end points

Requirements

  • git . pre-installed on Linux and macOS
  • make . pre-installed on Linux and macOS.
  • Python 3.11 : for creating virtual environment used for building AWS Lambda Layer, and locally by pre-commit linters and code formatters.
  • NodeJS : used with NPM for local ReactJS developer environment, and for configuring/testing Semantic Release.
  • Docker Compose : used by an automated Terraform process to create the AWS Lambda Layer for OpenAI and LangChain.

Cloud engineers:

Optional requirements:

We're Hiring!

Let's do something amazing, together! We're currently hiring for Full Stack and React developers, devops, and prompt engineering positions.

Requirements

A moral compass
Communication and time-management skills
A passion for learning
Online skills assessment(s)

Our Achievements

Patented technology
Something else
And, something else!
Explore More