-
Notifications
You must be signed in to change notification settings - Fork 79
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
feat: add support for o3 models & update litellm #130
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
❌ Changes requested. Reviewed everything up to ed65a80 in 2 minutes and 44 seconds
More details
- Looked at
209
lines of code in3
files - Skipped
1
files when reviewing. - Skipped posting
0
drafted comments based on config settings.
Workflow ID: wflow_j07WKSbicZ1eFXnM
Want Ellipsis to fix these issues? Tag @ellipsis-dev
in a comment. You can customize Ellipsis with 👍 / 👎 feedback, review rules, user-specific overrides, quiet
mode, and more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 Looks good to me! Incremental review on 3d1191e in 8 seconds
More details
- Looked at
13
lines of code in1
files - Skipped
0
files when reviewing. - Skipped posting
1
drafted comments based on config settings.
1. dynamiq/nodes/llms/openai.py:75
- Draft comment:
Good use ofparams.update()
to ensure existing parameters are not overwritten. - Reason this comment was not posted:
Confidence changes required:0%
The update to useparams.update()
instead of assignment ensures that existing parameters are not overwritten, which is a better practice when dealing with dictionaries that may have pre-existing keys.
Workflow ID: wflow_El6n87AQwKVCJIKY
You can customize Ellipsis with 👍 / 👎 feedback, review rules, user-specific overrides, quiet
mode, and more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 Looks good to me! Incremental review on a8e4386 in 9 seconds
More details
- Looked at
52
lines of code in2
files - Skipped
0
files when reviewing. - Skipped posting
1
drafted comments based on config settings.
1. dynamiq/nodes/llms/openai.py:32
- Draft comment:
Consider updating the test cases to reflect the method name change fromis_o_family
tois_o_series_model
to maintain consistency and avoid confusion. - Reason this comment was not posted:
Confidence changes required:50%
The method name change fromis_o_family
tois_o_series_model
is not reflected in the test file. This could lead to confusion or errors if the test file is not updated accordingly.
Workflow ID: wflow_amvZl4iX8is1SdKf
You can customize Ellipsis with 👍 / 👎 feedback, review rules, user-specific overrides, quiet
mode, and more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 Looks good to me! Incremental review on ff27000 in 46 seconds
More details
- Looked at
223
lines of code in3
files - Skipped
0
files when reviewing. - Skipped posting
9
drafted comments based on config settings.
1. dynamiq/nodes/llms/base.py:315
- Draft comment:
Good use of .copy() on connection parameters. This prevents accidental mutations to the shared config. - Reason this comment was not posted:
Confidence changes required:0%
None
2. dynamiq/nodes/llms/openai.py:44
- Draft comment:
Override uses property is_o_series_model correctly to switch between 'max_tokens' and 'max_completion_tokens'. - Reason this comment was not posted:
Confidence changes required:0%
None
3. tests/integration/nodes/llms/test_ollama.py:91
- Draft comment:
Added 'api_base' parameter in the expected call; ensure this matches the runtime connection config. - Reason this comment was not posted:
Confidence changes required:0%
None
4. dynamiq/nodes/llms/base.py:315
- Draft comment:
Good use of .copy() on connection parameters to avoid side effects. - Reason this comment was not posted:
Comment did not seem useful.
5. dynamiq/nodes/llms/base.py:316
- Draft comment:
Nice that you update the params with client info instead of replacing the dict, preserving other connection parameters. - Reason this comment was not posted:
Marked as duplicate.
6. dynamiq/nodes/llms/base.py:273
- Draft comment:
The new 'update_completion_params' hook is a good design for subclass customization. - Reason this comment was not posted:
Comment did not seem useful.
7. dynamiq/nodes/llms/openai.py:44
- Draft comment:
Cached property 'is_o_series_model' is used correctly in update_completion_params. Its boolean usage without parentheses is intentional. - Reason this comment was not posted:
Comment did not seem useful.
8. dynamiq/nodes/llms/openai.py:43
- Draft comment:
Optionally add an inline comment explaining why 'max_tokens' is replaced by 'max_completion_tokens' for O-series models, despite the clear docstring. - Reason this comment was not posted:
Confidence changes required:50%
None
9. tests/integration/nodes/llms/test_ollama.py:91
- Draft comment:
Test now expects an 'api_base' parameter; ensure the connection consistently supplies this value across environments. - Reason this comment was not posted:
Comment did not seem useful.
Workflow ID: wflow_m1TKoUvRpJ5gbeKq
You can customize Ellipsis with 👍 / 👎 feedback, review rules, user-specific overrides, quiet
mode, and more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Skipped PR review on c7a24b3 because no changed files had a supported extension. If you think this was in error, please contact us and we'll fix it right away.
Important
Add support for O3 models, update
litellm
, and enhanceOpenAI
class for O-series models with new example and tests.update_completion_params()
inbase.py
to allow subclasses to modify completion parameters.execute()
inbase.py
to useupdate_completion_params()
.is_o_series_model
and overrideupdate_completion_params()
inopenai.py
to handle O-series models.adaptive_article_o3.py
to demonstrate adaptive orchestrator with O3 models.litellm
version to1.59.12
inpyproject.toml
.api_key
totest_flow.py
andtest_ollama.py
to ensure correct API usage.test_flow.py
to handle new parameter updates inOpenAI
class.This description was created by for 6b675d5. It will automatically update as commits are pushed.