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 #157

Merged
merged 128 commits into from
Feb 22, 2024
Merged

📦 v0.0.2 #157

merged 128 commits into from
Feb 22, 2024

Conversation

roma-glushko
Copy link
Member

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

Turning 0.0.2-rc.2 into a stable version.

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>
roma-glushko and others added 24 commits February 4, 2024 22:34
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
* #131: init bedrock provider

* #131: request and response working

* #131: lint

* #131: fix context

* #131: clean code

* #131: Update test files

* #131: remove unneeded test

* #131: fix tests

* #131: lint

* #131: Moved auth to client

* #131: run test

* #131: lint

* #131: update readme

---------

Co-authored-by: Max <mkrueger190@gmail.com>
* #142: Add OllamaChatCompletion configs

* #142: update tests and docs

* #142: update readme

* #142: update tests

* #142: update tests

* #142: update tests

* #142: update tests

* #142: update tests

---------

Co-authored-by: Max <mkrueger190@gmail.com>
#152)

- Moved specific provider schemas closer to provider's packages
- simplified naming for Glide schema (removed the unified prefix)
# Conflicts:
#	.github/workflows/release.yaml
#	go.mod
#	go.sum
#	images/Makefile
Copy link

codecov bot commented Feb 22, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 70.73%. Comparing base (ec5600c) to head (cf6180d).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #157   +/-   ##
=======================================
  Coverage   70.73%   70.73%           
=======================================
  Files          40       40           
  Lines        2006     2006           
=======================================
  Hits         1419     1419           
  Misses        512      512           
  Partials       75       75           

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

@roma-glushko roma-glushko merged commit 4c64d9b into main Feb 22, 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.

None yet

3 participants