Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 5 additions & 10 deletions .github/workflows/lint.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ jobs:
- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: "1.21"
go-version: "1.22"
check-latest: true

- name: Install
Expand Down Expand Up @@ -56,7 +56,7 @@ jobs:
- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: "1.21"
go-version: "1.22"
check-latest: true
- name: Build
run: go build -v ./...
Expand All @@ -70,12 +70,9 @@ jobs:
- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: "1.21"
go-version: "1.22"
check-latest: true

- name: Install staticcheck
run: go install honnef.co/go/tools/cmd/staticcheck@latest

- name: Install nilaway
run: go install go.uber.org/nilaway/cmd/nilaway@latest

Expand All @@ -85,8 +82,6 @@ jobs:
version: latest
args: --timeout 5m

- name: Staticcheck
run: staticcheck ./...
# TODO: Ignore the issue in https://github.com/modelgateway/Glide/issues/32
# - name: Nilaway
# run: nilaway ./...
Expand All @@ -100,7 +95,7 @@ jobs:
- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: "1.21"
go-version: "1.22"
check-latest: true

- name: Test
Expand All @@ -126,7 +121,7 @@ jobs:
- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: "1.21"
go-version: "1.22"
check-latest: true

- name: Generate OpenAPI Schema
Expand Down
5 changes: 1 addition & 4 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ jobs:
- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: 1.21
go-version: 1.22

- name: Checkout
uses: actions/checkout@v4
Expand Down Expand Up @@ -69,9 +69,6 @@ jobs:
- name: login into Github Container Registry
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u $ --password-stdin

- name: login into Github Container Registry
run: echo "${{ secrets.DOCKER_HUB_TOKEN }}" | docker login -u einstack --password-stdin

- name: login into Docker
run: echo "${{ secrets.DOCKER_HUB_TOKEN }}" | docker login -u einstack --password-stdin

Expand Down
12 changes: 7 additions & 5 deletions .github/workflows/vuln.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -27,20 +27,22 @@ jobs:
- name: Install Go
uses: actions/setup-go@v4
with:
go-version: '1.21.5'
go-version: '1.22.1'
check-latest: true

- name: Checkout
uses: actions/checkout@v3

- name: Install govulncheck
run: go install golang.org/x/vuln/cmd/govulncheck@latest
# TODO: enable in https://github.com/EinStack/glide/issues/169
# - name: Install govulncheck
# run: go install golang.org/x/vuln/cmd/govulncheck@latest

- name: Install gosec
run: go install github.com/securego/gosec/v2/cmd/gosec@latest

- name: Govulncheck
run: govulncheck -test ./...
# TODO: enable in https://github.com/EinStack/glide/issues/169
# - name: Govulncheck
# run: govulncheck -test ./...

- name: Govulncheck
run: gosec ./...
2 changes: 1 addition & 1 deletion .go-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.21
1.22
136 changes: 104 additions & 32 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,75 +1,138 @@
# Changelog

The changelog consists of three categories:
- **Features** - a new functionality that brings value to users
- **Improvements** - bugfixes, performance and other types of improvements to existing functionality
The changelog consists of eight categories:
- **Added** - new functionality that brings value to users
- **Changed** - changes in existing functionality, performance and other types of improvements
- **Fixed** - bugfixes
- **Deprecated** - soon-to-be removed user-facing features
- **Removed** - earlier deprecated, now removed user-facing features
- **Security** - fixing CVEs in the gateway or dependencies
- **Miscellaneous** - all other updates like build, release, CLI, etc.

## 0.0.2-rc.2, 0.0.2 (Feb 22nd, 2024)
See [keepachangelog.com](https://keepachangelog.com/en/1.1.0/) for more information.

### Features
## [Unreleased]

- ✨ #142: [Lang Chat Router] Ollama Support (@mkrueger12)
- ✨ #131: [Lang Chat Router] AWS Bedrock Support (@mkrueger12)
### Added

TBU

### Changed

TBU

### Fixed

TBU

### Deprecated

TBU

### Removed

TBU

### Security

TBU

### Miscellaneous

- 👷 #155 Fixing the dockerhub authorization step in the release workflow (@roma-glushko)
- ♻️ #151: Moved specific provider schemas closer to provider's packages (@roma-glushko)
TBU

## [0.0.3-rc.1] (Apr 7th, 2024)

## 0.0.2-rc.1 (Feb 12th, 2024)
Bringing support for streaming chat in Glide.

### Features
### Added

- ✨#117 Allow to load dotenv files (@roma-glushko)
- ✨Streaming Chat Workflow #149 #163 #161 (@roma-glushko)
- ✨Streaming Support for Azure OpenAI #173 (@mkrueger12)
- ✨Cohere Streaming Chat Support #171 (@mkrueger12)
- ✨Start counting token usage in Anthropic Chat #183 (@roma-glushko)
- ✨Handle unauthorized error in health tracker #170 (@roma-glushko)

### Improvements
### Fixed

- ✨👷#91 Support for Windows (@roma-glushko)
- 👷 #139 Build Glide for OpenBSD and ppc65le, s390x, riscv64 architectures (@roma-glushko)
- 🐛 Fix Anthropic API key header #183 (@roma-glushko)

### Security

- 🔓 Update crypto lib, golang, fiber #148 (@roma-glushko)

### Miscellaneous

- 👷 #92 Release binaries to Snapcraft (@roma-glushko)
- 👷 #123 publish images to DockerHub (@roma-glushko)
- 🔧 #136 Migrated all API to Fiber (@roma-glushko)
- 👷 #139 Create a image tag with pure version (without distro suffix) (@roma-glushko)
- 🐛 Update README.md to fix helm chart location #167 (@arjunnair22)
- 🔧 Updated .go-version (@roma-glushko)
- ✅ Covered the telemetry by tests #146 (@roma-glushko)
- 📝 Separate and list all supported capabilities per provider #190 (@roma-glushko)

## 0.0.1 (Jan 31st, 2024)
## [0.0.2-rc.2], [0.0.2] (Feb 22nd, 2024)

### Features
### Added

- ✨ #81: Allow to chat message based for specific models (@mkrueger12)
- ✨ [Lang Chat Router] Ollama Support #142 (@mkrueger12)
- ✨ [Lang Chat Router] AWS Bedrock Support #131 (@mkrueger12)

### Improvements
### Miscellaneous

- 🔧 #78: Normalize response latency by response token count (@roma-glushko)
- 📝 #112 added the CLI banner info (@roma-glushko)
- 👷 Fixing the dockerhub authorization step in the release workflow #155 (@roma-glushko)
- ♻️ Moved specific provider schemas closer to provider's packages #151 (@roma-glushko)

## [0.0.2-rc.1] (Feb 12th, 2024)

### Added

- ✨ Allow to load dotenv files #117 (@roma-glushko)

### Changed

- ✨👷 Support for Windows #91 (@roma-glushko)
- 👷 Build Glide for OpenBSD and ppc65le, s390x, riscv64 architectures #139 (@roma-glushko)

### Miscellaneous

- 👷 Release binaries to Snapcraft #92 (@roma-glushko)
- 👷 Publish images to DockerHub #123 (@roma-glushko)
- 🔧 Migrated all API to Fiber #136 (@roma-glushko)
- 👷 Create a image tag with pure version (without distro suffix) #139 (@roma-glushko)

## [0.0.1] (Jan 31st, 2024)

### Added

- ✨Allow to chat message based for specific models #81 (@mkrueger12)

### Changed

- 🔧 Normalize response latency by response token count #78 (@roma-glushko)
- 📝 Added the CLI banner info #112 (@roma-glushko)

### Miscellaneous

- 📝 #114 Make links actual across the project (@roma-glushko)

## 0.0.1-rc.2 (Jan 22nd, 2024)
## [0.0.1-rc.2] (Jan 22nd, 2024)

### Improvements
### Added

- ⚙️ [config] Added validation for config file content #40 (@roma-glushko)
- ⚙️ [config] Allowed to pass HTTP server configs from config file #41 (@roma-glushko)
- 👷 [build] Allowed building Homebrew taps for release candidates #99 (@roma-glushko)

## 0.0.1-rc.1 (Jan 21st, 2024)
## [0.0.1-rc.1] (Jan 21st, 2024)

### Features
### Added
- ✨ [providers] Support for OpenAI Chat API #3 (@mkrueger12)
- ✨ [API] Unified Chat API #54 (@mkrueger12)
- ✨ [providers] Support for Cohere Chat API #5 (@mkrueger12)
- ✨ [providers] Support for Azure OpenAI Chat API #4 (@mkrueger12)
- ✨ [providers] Support for OctoML Chat API #58 (@mkrueger12)
- ✨ [routing] The Routing Mechanism, Adaptive Health Tracking, and Fallbacks #42 #43 #51 (@roma-glushko)
- ✨ [routing] Support for round robin routing strategy #44 (@roma-glushko)
- ✨ [routing] Support for round-robin routing strategy #44 (@roma-glushko)
- ✨ [routing] Support for the least latency routing strategy #46 (@roma-glushko)
- ✨ [routing] Support for weighted round robin routing strategy #45 (@roma-glushko)
- ✨ [routing] Support for weighted round-robin routing strategy #45 (@roma-glushko)
- ✨ [providers] Support for Anthropic Chat API #60 (@mkrueger12)
- ✨ [docs] OpenAPI specifications #22 (@roma-glushko)

Expand All @@ -80,5 +143,14 @@ The changelog consists of three categories:
- 🔧 [chores] Inited Glide's CLI #12 (@roma-glushko)
- 👷 [chores] Setup CI workflows #8 (@roma-glushko)
- ⚙️ [config] Inited configs #11 (@roma-glushko)
- 🔧 [chores] Automatic coverage reports #39 (@roma-glushko)
- 🔧 [chores] Automatic coverage reports #39 (@roma-glushko)
- 👷 [build] Setup release workflows #9 (@roma-glushko)

[unreleased]: https://github.com/olivierlacan/keep-a-changelog/compare/0.0.3-rc.1...HEAD
[0.0.3-rc.1]: https://github.com/EinStack/glide/compare/0.0.2..0.0.3-rc.1
[0.0.2]: https://github.com/EinStack/glide/compare/0.0.2-rc.1..0.0.2
[0.0.2-rc.2]: https://github.com/EinStack/glide/compare/0.0.2-rc.1..0.0.2-rc.2
[0.0.2-rc.1]: https://github.com/EinStack/glide/compare/0.0.1..0.0.2-rc.1
[0.0.1]: https://github.com/EinStack/glide/compare/0.0.1-rc.2..0.0.1
[0.0.1-rc.2]: https://github.com/EinStack/glide/compare/0.0.1-rc.1..0.0.1-rc.2
[0.0.1-rc.1]: https://github.com/EinStack/glide/releases/tag/0.0.1-rc.1
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ lint: install-checkers ## Lint the source code

vuln: install-checkers ## Check for vulnerabilities
@echo "🔍 Checking for vulnerabilities"
@$(CHECKER_BIN)/govulncheck -test ./...
@#$(CHECKER_BIN)/govulncheck -test ./... enable in https://github.com/EinStack/glide/issues/169
@$(CHECKER_BIN)/gosec -quiet -exclude=G104 ./...

run: ## Run Glide
Expand Down
22 changes: 11 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,16 +42,16 @@ Check out our [documentation](https://glide.einstack.ai)!

### Large Language Models

| | Provider | Support Status |
|-----------------------------------------------------|---------------|-----------------|
| <img src="docs/images/anthropic.svg" width="18" /> | Anthropic | 👍 Supported |
| <img src="docs/images/azure.svg" width="18" /> | Azure OpenAI | 👍 Supported |
| <img src="docs/images/aws-icon.png" width="18" /> | AWS Bedrock (Titan) | 👍 Supported |
| <img src="docs/images/cohere.png" width="18" /> | Cohere | 👍 Supported |
| <img src="docs/images/bard.svg" width="18" /> | Google Gemini | 🏗️ Coming Soon |
| <img src="docs/images/octo.png" width="18" /> | OctoML | 👍 Supported |
| <img src="docs/images/ollama.png" width="18" /> | Ollama | 👍 Supported |
| <img src="docs/images/openai.svg" width="18" /> | OpenAI | 👍 Supported |
| Provider | Supported Capabilities |
|-----------------------------------------------------------------------|-------------------------------------------|
| <img src="docs/images/openai.svg" width="18" /> OpenAI | ✅ Chat <br/> ✅ Streaming Chat |
| <img src="docs/images/anthropic.svg" width="18" /> Anthropic | ✅ Chat<br/>🏗️ Streaming Chat (coming soon) |
| <img src="docs/images/azure.svg" width="18" /> Azure OpenAI | ✅ Chat<br/> 🏗️ Streaming Chat (coming soon) |
| <img src="docs/images/aws-icon.png" width="18" /> AWS Bedrock (Titan) | ✅ Chat |
| <img src="docs/images/cohere.png" width="18" /> Cohere | ✅ Chat<br/> 🏗️ Streaming Chat (coming soon) |
| <img src="docs/images/bard.svg" width="18" /> Google Gemini | 🏗️ Chat (coming soon) |
| <img src="docs/images/octo.png" width="18" /> OctoML | ✅ Chat |
| <img src="docs/images/ollama.png" width="18" /> Ollama | ✅ Chat |

## Get Started

Expand Down Expand Up @@ -183,7 +183,7 @@ docker pull ghcr.io/einstack/glide:latest-redhat
Add the EinStack repository:

```bash
helm repo add einstack https://einstack.github.io/helm-charts
helm repo add einstack https://einstack.github.io/charts
helm repo update
```

Expand Down
11 changes: 11 additions & 0 deletions docs/api/Language API/💬 Chat Stream.bru
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
meta {
name: 💬 Chat Stream
type: http
seq: 2
}

get {
url: {{base_url}}/language/default/chatStream
body: none
auth: none
}
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
meta {
name: [Lang] Chat
name: 💬 Chat
type: http
seq: 2
seq: 1
}

post {
url: {{base_url}}/v1/language/myrouter/chat/
url: {{base_url}}/language/default/chat/
body: json
auth: none
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
meta {
name: [Lang] Router List
name: 🔧 Router List
type: http
seq: 3
}

get {
url: {{base_url}}/v1/language/
url: {{base_url}}/language/
body: json
auth: none
}
Expand Down
2 changes: 1 addition & 1 deletion docs/api/environments/Development.bru
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
vars {
base_url: http://127.0.0.1:9099
base_url: http://127.0.0.1:9099/v1
}
4 changes: 2 additions & 2 deletions docs/api/Health.bru → docs/api/🔧 Health.bru
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
meta {
name: Health
name: 🔧 Health
type: http
seq: 1
}

get {
url: {{base_url}}/health
url: {{base_url}}/health/
body: none
auth: none
}
Loading