Repository navigation
feat(wren-ai-service): multi-llm deployment and setting loading mechanism - #792
Merged
cyyeh merged 94 commits intoNov 15, 2024
Merged
Conversation
paopa
force-pushed
the
feat/multi-llm-config-deployment
branch
4 times, most recently
from
October 23, 2024 03:26
4de5c9e to
dbc6abe
Compare
paopa
marked this pull request as ready for review
October 23, 2024 04:08
cyyeh
reviewed
Oct 24, 2024
cyyeh
reviewed
Oct 24, 2024
cyyeh
reviewed
Oct 24, 2024
cyyeh
reviewed
Oct 24, 2024
cyyeh
left a comment
Member
There was a problem hiding this comment.
Great work! There are some comments below for my first review
paopa
force-pushed
the
feat/multi-llm-config-deployment
branch
from
October 24, 2024 08:33
e6fe323 to
8f644f7
Compare
paopa
force-pushed
the
feat/multi-llm-config-deployment
branch
4 times, most recently
from
October 30, 2024 06:13
8d3eb52 to
b915372
Compare
cyyeh
force-pushed
the
feat/multi-llm-config-deployment
branch
from
October 31, 2024 23:42
f483256 to
210b5e9
Compare
paopa
force-pushed
the
feat/multi-llm-config-deployment
branch
from
November 4, 2024 03:25
adbef51 to
f916640
Compare
added 10 commits
November 4, 2024 11:33
paopa
force-pushed
the
feat/multi-llm-config-deployment
branch
from
November 12, 2024 10:37
c524a96 to
dada5a7
Compare
cyyeh
reviewed
Nov 13, 2024
cyyeh
left a comment
Member
There was a problem hiding this comment.
I've added gpt-4o to config.yaml for kustomization. Also I am curious about the new launcher process if users choose "CUSTOM"
Author
the behavior will be the same as before, it check whether the config.yaml exist, if not, will print the message in console to guide user to follow the instruction to download and modify the config. |
added 4 commits
November 13, 2024 15:24
…eployment # Conflicts: # wren-ai-service/tools/config/config.example.yaml
paopa
pushed a commit
that referenced
this pull request
Nov 15, 2024
…nism (#792) Co-authored-by: ChihYu Yeh <chihyu.jimmy.yeh@gmail.com> Co-authored-by: Ted Yan <tedyyan@hotmail.com> Co-authored-by: Teddy Yan <xuan.yan@nokia.com>
paopa
pushed a commit
that referenced
this pull request
Nov 15, 2024
…nism (#792) Co-authored-by: ChihYu Yeh <chihyu.jimmy.yeh@gmail.com> Co-authored-by: Ted Yan <tedyyan@hotmail.com> Co-authored-by: Teddy Yan <xuan.yan@nokia.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR introduces a new hierarchical configuration system for the Wren AI Service, significantly improving flexibility and maintainability. It also refactors various components to use this new system, enhancing overall code organization and clarity.
Key Changes
1. New Settings Loading Mechanism
Implemented a hierarchical settings loading mechanism in
src/config.py:Settingsclass usingpydantic_settings.BaseSettings.env.devfileconfig.yamlfileThis approach allows for flexible configuration across different environments while maintaining security for sensitive information.
2. Configuration File Processing
config.yamlfile to configure components, pipelines, and service settingssrc/providers/__init__.py3. Refactored Provider Initialization
generate_componentsfunction to use the new configuration systeminit_providersandWrapperclass as deprecated4. Environment Variable Consolidation
OPENAI_API_KEYenvironment variableAZURE_OPENAI_API_KEY5. Updated Service Initialization
src/__main__.pyto use the newSettingsclass for service configuration6. Docker and Deployment Updates
Benefits
Testing
To ensure the functionality of these changes, please conduct testing in the following environments:
Kubernetes (K8s) Testing
Follow the instructions provided in the deployment README to set up and test in a Kubernetes environment.
Wren Launcher Testing
Docker Compose Testing
Local Testing
justcommand to start the service and run tests.Ensure thorough testing across all environments to validate the changes in the relationship recommendation pipeline.
Documentation
README.mdwith new setup instructionsconfiguration.mdto explain the new configuration system in detailThis PR represents a significant improvement in how we manage configuration for the Wren AI Service, providing a more robust and flexible foundation for future development.
Next Step
we have to update to date the document, after this PR was be merged