-
Notifications
You must be signed in to change notification settings - Fork 327
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
Large Refactor of Docs and Components #683
Conversation
aaazzam
commented
Dec 15, 2023
•
edited
Loading
edited
- makes components consume clients
- introduces Marvin.wrap to wrap openai client
- improves runtime settings
- isolates runtime settings from client generation
- adds updated documentation to account for all above
use settings for some defaults, avoid warnings
When you do you'll see the raw payload that's sent to the LLM. The prompt you send is fully customizable. | ||
```json | ||
{ | ||
"logit_bias": { | ||
"15": 100.0, | ||
"16": 100.0, | ||
"17": 100.0, | ||
"18": 100.0, | ||
"19": 100.0, | ||
"20": 100.0, | ||
"21": 100.0, | ||
"22": 100.0, | ||
"23": 100.0 | ||
}, |
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.
✨
|
||
Marvin's goal is to bring the best practices for building dependable, observable software to generative AI. As the team behind [Prefect](https://github.com/prefecthq/prefect), which does something very similar for data engineers, we've poured years of open-source developer tool experience and lessons into Marvin's design. | ||
This lets you focus on what you've always focused on: writing clean, versioned, reusable *code* and *data models*, | ||
and not scrutinizing whether you begged your LLM hard enough to output JSON. |
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.
this is a matter of life and death
assert set(x.speakers) == set(["Adam", "Nate", "Jeremiah"]) | ||
assert len(set(x.speakers)) == 5 | ||
assert set(x.speakers) == set( | ||
["Adam", "Nate", "Jeremiah", "Marvin", "Billy Bob Thornton"] |
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.
hmm i was thinking i want my Literal
to filter to only the speakers
that I was interested in, so i purposefully left the extra person in the input out of the Literal
to test that
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.
yeah, this is just a function calling regression / flaky test
happy to revisit
Co-authored-by: nate nowack <thrast36@gmail.com>
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.
lgtm!
any chance we can clean up duplicate type utils in serializer if they're being overtaken by marvin._mappings
?