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

Large Refactor of Docs and Components #683

Merged
merged 48 commits into from
Dec 15, 2023
Merged

Large Refactor of Docs and Components #683

merged 48 commits into from
Dec 15, 2023

Conversation

aaazzam
Copy link
Collaborator

@aaazzam aaazzam commented Dec 15, 2023

  • 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

Comment on lines +253 to +266
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
},
Copy link
Collaborator

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.
Copy link
Collaborator

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"]
Copy link
Collaborator

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

Copy link
Collaborator Author

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

Copy link
Collaborator

@zzstoatzz zzstoatzz left a 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?

@aaazzam aaazzam merged commit 5b88e0f into main Dec 15, 2023
12 checks passed
@aaazzam aaazzam deleted the docs-referesh branch December 15, 2023 21:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants