Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

📦 v0.0.2-rc.1 #143

Merged
merged 109 commits into from
Feb 12, 2024
Merged

📦 v0.0.2-rc.1 #143

merged 109 commits into from
Feb 12, 2024

Conversation

roma-glushko
Copy link
Member

@roma-glushko roma-glushko commented Feb 12, 2024

Changelog

Features

Improvements

Miscellaneous

roma-glushko and others added 30 commits December 9, 2023 13:50
* init

* fix: remove package

* #3: project organization

* #3-feat: build chat api

* #3 rename func

* Remove unused dependencies from go.sum

* #3: Add .env to .gitignore

---------

Co-authored-by: Max <mkrueger190@gmail.com>
* #12 Inited the Gateway, ServerManager components + CLI

* #12 Inited ServerManager

* #12 Used hertz as a HTTP server

* #12 Added todo

* #13 Added the health endpoint
* #3: Update dependencies, fix package names, add validators

* #3: Remove unused fields in ProviderConfig struct

* #3: Update OpenAI provider configuration validation

* #3: Refactor OpenAI provider config structure

* #3: Update go.mod and go.sum files

* #3: add comments

* #3: Refactor package name in OpenAI API and chat files

* #3: build OpenAI config

* #3: Build API Request

* #3: Refactor param checking in BuildAPIRequest function

* #3: build request based on client parameters

---------

Co-authored-by: Max <mkrueger190@gmail.com>
* #15: Update dependencies in go.mod and add input validation using validator package

* #15: Fix validation error in BuildAPIRequest function

* #15: Refactor OpenAI provider configuration structure

* #15: TODO: Import provider configs to the config list

* #15: Import OpenAI provider configuration and update BuildAPIRequest function

* #15: comments

---------

Co-authored-by: Max <mkrueger190@gmail.com>
* #24: Refactor OpenAI provider config struct

* #24: Update OpenAiProviderConfig Messages field validation

---------

Co-authored-by: Max <mkrueger190@gmail.com>
* #8 Setting up CI checks via GH Actions

* #8 Fixing lint errors in the existing codebase

* #8 Fixed remaining lint errors

* #8 Installed tools via makefile, merged tests with the lint yaml

* #8 Disabled troublesome checks

* #8 fixing the minor version for gosec

* #8 Run gosec directly in the job
* #14 Inited Glide logging based on Zap

* #14 introducing a new telemetry struct

* #14: Introduced a new telemetry struct to hold all observability components

* #14: Added the router struct

* #14: Configured hertz logger to obey the general logging config

* #14 Added more static checks
* #35: Updated readme

* #35: Added more sections

* #35: minor adjustments

* #35 Optimized the logo

* #35: Added more useful info
Centered the logo
made badge color more readable
* #11: Added a new config struct

* #11: Added API config and connected it to the general config

* #11 Added config provider & loading a config file

* #11 Added directive expander

* #11 Added a secret field

* #11 Linting

* #11 Added default configs & replaced mapstruct back to YAML & simplified expander setup

* #11 finished directive expander

* #11 linting

* #11 Added a test for a single $ char

* #11 linting

* #11 fixed typo
* #29: openai client

* #29: add sample

* #29: Refactor OpenAI provider configuration

* #29: Refactor OpenAiClient struct and methods

* #29: Refactor OpenAiClient struct and methods

* #29: refactor

* 29: chat converted to Hertz

* #29: Update OpenAI provider configuration and chat request validation

* #29: clean up

* #29: Remove unused code and refactor parseStreamingChatResponse function

* #29: Update dependencies in go.mod and go.sum files

* #29: build client init

* #29: CreatChatRequest

* #29: Fix import and log package names

* #29: add run method

* #29: tests passing

* #29: tests passing

* #29: add todo

* #29: go mod tody

* #29: gofmt

* #29: gofumpt

* #29: lint

* #29: lint

* #29: lint

* #29: fix Implicit memory aliasing

* #29: lint

* #29: update request from defaultParams

* #29: lint

* #29: lint

* #29: emove unused variable in OpenAiClient constructor

* #29: Update client

* #29: Refactor OpenAI chat functionality

* #29: Fix OpenAI client error handling and validation

* #29: Fix OpenAI client error handling and validation

* #29: Set the appropriate base URL in OpenAiClient constructor

* #29: Refactor OpenAI provider configuration

* #29: comments

* #29: Refactor OpenAI client and related functions

* #29: chores

* #29: chores

* #29: comment

* #29: create a yaml for provider global configs

* #29: comments

* #29: comments

* #29: update http client

* #29: Add file path validation and error handling in openaiclient.go

* #29: move common helpers to types.go

* #29: chores

* #29: Refactor OpenAI client and chat request creation

* #29: Remove unused dependencies and update dependencies

* #29: Update Unified Data structure

* #29: remove provider

* #29: clean up

* #29: clean up

* #29: lint

* #29: remove hertz comment

* #29: pass unified data to chat method

* #29: init logging

* #29: init logging

* #29: init logging

* #29: lint

---------

Co-authored-by: Max <mkrueger190@gmail.com>
* #39: Report test coverage to CodeCov

* #39: Fixing linting

* #39: linting

* #39 Adding the coverage badge to the readme
* Fail on no config file

* Use the dev config in the make run command

* Covered a few exceptional cases

* Linting

* Linting
- Cleaned up and restructured provider/openai codebase. Separated unified schemas to the api package.
- Added and exposed the language chat API with the unified request/response schemas. Updated the bruno collection with this request
- Added an example of client tests
- Connected Glide API with the underlying model provider (OpenAI client is hardcoded for now)
- Implemented default value setting for nested nillable config items
- Implemented provider setting validation on the model item level
* 22: Installed & exposed API documentation

* #22 Left a note about API docs in the readme.md

* #22 Check if API docs were updated in CI

* #22: linting

* #22: install swag CLI
* #51: Build routers & models based on provided config

* #51 Fixed circular import issue

* #51: Checked model config before ending initialization

* #51: updated the dev config to setup the openAI model

* 51: Fixing vuln issues

* #51 logged more context

* #51: Collected routers as slice

* #51: Added the new lang routers API

* #51: Hide api key filed completely
Updated some of the description and spelling
* #54: Refactor UnifiedChatResponse struct and add ProviderResponse and TokenCount structs

* #54: Unified response created and tested - passing

* #54: lint

* #54: lint

---------

Co-authored-by: Max <mkrueger190@gmail.com>
* #54: Refactor UnifiedChatResponse struct and add ProviderResponse and TokenCount structs

* #54: Unified response created and tested - passing

* #54: lint

* #5: init

* #5: build cohere chat client

* #5: lint

* #5: Cohere provider working

* #5: lint

* #5: remove api key lol

* #5: Update OpenAI references to Cohere

* #5: Refactor cohere client test and update response ID

* #5: lint

* #5: lint

---------

Co-authored-by: Max <mkrueger190@gmail.com>
* #61: Create OpenAI Chat Response Schema

* #61: Test unmarshling

* #61: unmarshal openai response

* #61: Update CohereChatCompletion struct and related types

* #61: Update Cohere chat response mapping

* #61: lint

* #61: lint

---------

Co-authored-by: Max <mkrueger190@gmail.com>
* #4: add azure openai client

* #4: update testdata

* #4: lint

* #4: add tests

* #4: fix var name

* #4: add tests

* #4: tests

* #4: fix model response

---------

Co-authored-by: Max <mkrueger190@gmail.com>
mkrueger12 and others added 24 commits January 28, 2024 09:01
* #81: Update request schema so a model can be specified

* #81: Add model field to JSON payload

* #81: refactor getPayload function

* #81: lint

* #81: Refactor Chat function to support message override, add back pointer

* #81: add docs

---------

Co-authored-by: Max <mkrueger190@gmail.com>
* 📝 #104 Added the marketecture

* #104 Added the discord chat badge
- Normalize response latency by response token count 
- renamed TokenCount to TokenUsage
* 🧹 Actualized links everywhere
# Conflicts:
#	README.md
Allows users to use dotenv files by:
- automatically loading .env file in the current directory
- allow to specify path/name to dotenv file
- configured the release workflows to publish binaries to Snapcraft
Build binaries for windows by replacing the hertz transport
* 🔧 Changed the default HTTP server configs
* 🧹 Made codebase compatible with GoLangCI 1.56
* 🔧 #136 Migrated all API to Fiber

* #136 Configured swagger for Fiber

* #136: Integrated Fiber with zap logger

* #136: Disabled stacktrace for the init time warning

* #136: linting

* #136 Handle the context deadline error
…138)

👷 Build Glide for OpenBSD and ppc65le, s390x, riscv64 architectures
Copy link

codecov bot commented Feb 12, 2024

Codecov Report

Attention: 6 lines in your changes are missing coverage. Please review.

Comparison is base (b02c949) 71.54% compared to head (11c89ff) 71.31%.

Files Patch % Lines
pkg/config/provider.go 0.00% 2 Missing ⚠️
pkg/routers/config.go 75.00% 2 Missing ⚠️
pkg/config/expander.go 0.00% 1 Missing ⚠️
pkg/routers/health/error_budget.go 50.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #143      +/-   ##
==========================================
- Coverage   71.54%   71.31%   -0.23%     
==========================================
  Files          34       34              
  Lines        1680     1684       +4     
==========================================
- Hits         1202     1201       -1     
- Misses        413      418       +5     
  Partials       65       65              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@roma-glushko roma-glushko merged commit 62a0c59 into main Feb 12, 2024
14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants