Giter VIP home page Giter VIP logo

neon-diana-utils's People

Contributors

erikabarcott avatar neonclary avatar neondaniel avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

neon-diana-utils's Issues

Kubernetes Support

Objective

Support deployment of packages to Kubernetes

Initial Implementation

  • Initial PoC conversion of deployed API server to K8s
  • Update and add util methods to diana entry point to generate K8s configs
  • Refactoring of config to ConfigMap/Secrets instead of nfs shares
  • Implement and document or automate proxy config for k8s

[FEAT] Default webpage for backend root

Objective

Add a default page to return when the root backend domain is accessed

Initial Implementation Requirements

  • static page with links to DIANA repository and neon.ai website (others?)
  • Add default ingress route for / to return static webpage

Other Considerations

No response

[FEAT] HANA configuration in CLI setup

Objective

Add HANA frontend configuration to CLI.

Initial Implementation Requirements

  • Add hana configuration to CLI flow

Other Considerations

No response

[FEAT] Administration Web UI

Objective

Add a unified web interface for managing a Hub deployment serving multiple clients. This would ideally be a standalone container in a new repository.

Initial Implementation Requirements

  • Configuration UI for creating and updating deployments (equivalent to current CLI process)
  • UI to monitor/explore running services
  • Method for configuring networking for local access to HTTP services
  • (optional) method for creating Node boot disks
  • (optional) method for auto-updating Helm charts and Diana configs

Other Considerations

This may be split into a few separate projects

[FEAT] Whisper STT Deployment

Objective

Add (optional) whisper STT to the backend deployments

Initial Implementation Requirements

  • Whisper STT container with gradio interface

Other Considerations

  • Consider replacing default nemo with whisper (or run both?)

[FEAT] Kubernetes ingress docs

Objective

Add documentation for ingress-nginx Proxy config and routing requirements for MQ.

Initial Implementation Requirements

  • Document cases where proxy config is necessary or not
  • Add note about MQ requirements with proxy headers

Other Considerations

  • Default use proxy?
  • Default to not use external MQ connections?

[FEAT] CLI option to update an existing deployment

Objective

Currently, updates are performed either manually or by re-configuring Helm charts from scratch. A better method would update existing configurations in-place.

Initial Implementation Requirements

  • Method to update RabbitMQ configuration, adding new users and vhosts as necessary
  • Method to update yaml configurations (diana.yaml, neon.yaml, chatbots.yaml)
  • Method to update chart dependencies in Chart.yaml

Other Considerations

An alternate (maybe easier?) way to look at this would be to load default values from an existing deployment while configuring new charts from scratch.

[FEAT] Allow neon_speech to run offline

Objective

Currently, the neon_speech container will not run without an internet connection. All of the other services load without one, but since neon_speech pulls down a model from HuggingFace on init, the container consistently fails.

Initial Implementation Requirements

Most likely path forward is either to build an image with the model baked in (seems pretty large) or to set the cache directory as a PVC, allowing you to run offline as long as you are online long enough to get the model into a persistent cache.

Other Considerations

No response

[FEAT] Log Aggregation

Objective

Currently, many services interact with each other, so viewing synchronized logs is sometimes necessary. Additionally, we have no documented tools for viewing container logs in k8s (k9s is not really a log viewer).

Initial Implementation Requirements

  • Service or workflow to view multiple container logs in real-time
  • Method for viewing multiple container logs from a specific time range

Other Considerations

[FEAT] Simplified/Automated Installer for pre-configured appliances

Objective

Define a method for provisioning a device as a Diana server with minimal manual setup. This will also require some UI for setting configuration after installation.

Initial Implementation Requirements

  • Installable image or simple script for performing a basic setup/configuration
  • Instructions for configuration or #66 completed for user-provided config

Other Considerations

  • This could be a debos image with services running as system services rather than containers
  • Could this use some tool like ansible or terraform?

[FEAT] Recreate rabbitMQ on helm upgrade

Objective

Currently, RabbitMQ isn't restarted on upgrade so configuration isn't automatically updated.

Initial Implementation Requirements

  • Add something to the RabbitMQ deployment spec to force restarting when a new diana-backend chart is applied

Other Considerations

No response

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.