- nate_nowack parentyea i dont think there's any blocker from a protocol perspective, im just saying i'd love to see it happen. adoption for sure among the largest hurdles id guess
- would love fb marketplace disruptor on atproto
- yea its a popular DX at this point: https://blog.alternatebuild.dev/marvin-3x/
- yeah this seems to be pretty much the same interface as `fn` from marvin, except w/o pydantic (see https://github.com/PrefectHQ/marvin?tab=readme-ov-file#-buil...)
- as with marvin, you can just swap the base url and use any of the oss proxy libs that clone the openai api (but since they don't do function calling [except for mistral i think], its not as good afaik)
- hi, just seeing this!
you're correct that normal chatgpt wouldn't crawl the URL, but ai_fns can have plugins like the DuckDuckGo plugin / VisitURL plugin which can be invoked by the underlying Bot if it decides its helpful to its answer
for example: https://gist.github.com/zzstoatzz/a16da0594afc2bb751428907e4...
feel free to try it yourself :)
- interesting! I hadn't seen that before
ai_fn is just a specific way to use Marvin's Bot abstraction, which is one of the few abstractions Marvin offers
but a couple differences I notice off the bat between ai_fn and com2fun:
- marvin uses pydantic for parsing LLM to result types
- you can pass plugins/personality/instructions to the underlying bot via the @ai_fn decorator kwargs
- (unless I'm missing a dataclass version of this in com2fun) marvin can parse output into arbitrary pydantic types like this example https://github.com/PrefectHQ/marvin/issues/106#issuecomment-...
- Hi!
This example was produced using GPT 3.5 turbo, where yes, the LLM does not always align ideally. I used 3.5 for the example since that's Marvin's default and I know many people wouldn't have gpt4 access yet (which is significantly better at following instructions) - didn't want to set a misleading expectation.
that said, my instructions for the bot in this example certainly could have been more precise :) for a more real example, you could check out the other example (which works pretty well on 3.5) https://github.com/PrefectHQ/marvin/blob/main/examples/load_...