Code Monkey home page Code Monkey logo

gateway's Introduction

Gateway

Core infrastructure stack for building production-ready AI Applications

Lint Release License Version Discord Twitter



Introduction

๐ŸŒˆ A Robust cloud-native AI Gateway - core LLMOps infrastructure stack for building production-ready AI Applications. It provides an Universal API for inferencing 100+ LLMs(OpenAI, Azure, Cohere, Anthropic, HuggingFace, Replicate, Stable Diffusion).

๐Ÿš€ Key Features

โœ…ย  Seamless Integration with Universal API
โœ…ย  Reliable LLM Routing with AI Router
โœ…ย  Load balance across multiple models and providers
โœ…ย  Automatic Retries with exponential fallbacks
โœ…ย  High availability and resiliency using production-ready LLMOps
๐Ÿšงย  Detailed Usage Analytics
๐Ÿšงย  PII detection and masking
๐Ÿšงย  Simple & Semantic Caching for cost reduction
๐Ÿšงย  No Vendor lock-in Observability - Logging, monitoring and tracing
โœ…ย  Enterprise-ready with enhanced security, reliability, and scale with custom deployments support.

Supported Providers

Provider Provider Name Support Supported Endpoints
OpenAI openai โœ… /chat/completions, /chat/completions:stream
Groq groq โœ… /chat/completions, /chat/completions:stream
Anyscale anyscale โœ… /chat/completions
Deepinfra deepinfra โœ… /chat/completions
Together AI togetherai โœ… /chat/completions

Not supported (yet): images, audio, files, fine-tunes, moderations

Installation

AI gateway can be intall on macOS, Windows, Linux, OpenBSD, FreeBSD, and on any machine

Binary (Cross-platform)

Download the appropriate version for your platform from releases page. Once downloaded, the binary can be run from anywhere. Ideally, you should install it somewhere in your PATH for easy use. /usr/local/bin is the most probable location.

MacOS

gateway is available via a Homebrew Tap, and as downloadable binary from the releases page:

brew install missingstudio/tap/gateway

To upgrade to the latest version:

brew upgrade gateway

Linux

gateway is available as downloadable binaries from the releases page. Download the .deb or .rpm from the releases page and install with sudo dpkg -i and sudo rpm -i respectively.

Windows

gateway is available via scoop, and as a downloadable binary from the releases page:

scoop bucket add gateway https://github.com/missingstudio/scoop-bucket.git

To upgrade to the latest version:

scoop update gateway

Docker

We provide ready to use Docker container images. To pull the latest image:

docker pull missingstudio/gateway:latest

To pull a specific version:

docker pull missingstudio/gateway:v0.0.1

Docker compose

To start missing studio AI gateway, simply run the following command:

make up

Your AI Gateway is now running on http://localhost:8080 ๐Ÿ’ฅ

Usage

Let's make a chat completion request to OpenAI through the AI Gateway using both REST and gRPC protocols

Send a request using curl

curl \
--header "Content-Type: application/json" \
--header "x-ms-provider: openai" \
--header "Authorization: Bearer {{OPENAI_API_KEY}}" \
--data '{"model":"gpt-3.5-turbo","messages":[{"role":"user","content":"who are you?"}]}' \
http://localhost:8080/v1/chat/completions

Send a request using grpcurl

grpcurl \
-d '{"model":"gpt-3.5-turbo","messages":[{"role":"user","content":"hi"}]}' \
-H 'x-ms-provider: openai' \
-H 'Authorization: Bearer {{OPENAI_API_KEY}}' \
-plaintext  localhost:8080  llm.v1.LLMService.ChatCompletions

๐Ÿซถ Contributions

AI studio is an open-source project, and contributions are welcome. If you want to contribute, you can create new features, fix bugs, or improve the infrastructure.

It's still very early days for this so your mileage will vary here and lots of things will break. But almost any contribution will be beneficial at this point. Check the current Issues to see where you can jump in!

If you've got an improvement, just send in a pull request!

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'feat(module): add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

If you've got feature ideas, simply open a new issues!

Please refer to the CONTRIBUTING.md file in the repository for more information on how to contribute.

License

AI Studio is Apache 2.0 licensed.

gateway's People

Contributors

pyadav avatar

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.