Top
Best
New

Posted by doener 6 hours ago

RubyLLM: A Ruby framework for all major AI providers(rubyllm.com)
251 points | 36 commentspage 2
fragkakis 5 hours ago|
I have created an open source chatgpt clone with rubyllm, check it out here: https://www.railschat.org/
reg_dunlop 2 hours ago|
tried it and got this:

> Error: You exceeded your current quota, please check your plan and billing details. For more information on this error, head to: https://ai.google.dev/gemini-api/docs/rate-limits. To monitor your current usage, head to: https://ai.dev/rate-limit. * Quota exceeded for metric: generativelanguage.googleapis.com/generate_content_free_tier_requests, limit: 20, model: gemini-2.5-flash Please retry in 41.543129369s.

fragkakis 2 minutes ago||
I have used a personal Gemini token for all users, which often exceeds quota. You can: 1. Check out the repo and use your own tokens 2. Use your own tokens in the browser, they are only held in the browser and are not being persisted or logged in the backend
mosselman 6 hours ago||
It is quite nice, but not as nice as you'd want. You still have to set platform specifics when running completions when you want to tune things like temperature, effort, max tokens, etc.
earcar 5 hours ago|
RubyLLM author here.

I'm not sure where you got that.

`chat.with_temperature(0.2)`

https://rubyllm.com/chat/#controlling-response-behavior

`chat.with_thinking(effort: :high, budget: 8000)`

https://rubyllm.com/thinking/#controlling-extended-thinking

Max tokens is the only one of your list that require provider specific params:

https://rubyllm.com/chat/#provider-specific-parameters

I'm one guy doing it for free. Happy to see your contribution!

mosselman 5 hours ago|||
Hi! Valid challenge, I am probably misremembering. We were playing with various 'one-interface to all providers' solutions and I might have mixed up RubyLLM there. Sorry for that.

I will have a deep dive into which things I felt we needed to adapt per provider.

I didn't mean to imply that you have to solve all of our wants of course.

One thing we did do was monkey-patch the spot where tool_calls are performed by RubyLLM. We had our own mechanism for that and were able to skip RubyLLM's and still extract the tool calls and run them through our own tool harness. That all worked beautifully. I don't know if that type of stuff is something you want PRs on or that you want to keep steering towards the route that does everything within RubyLLM classes. Happy to contribute some of that.

earcar 5 hours ago||
Interesting! What were you guys trying to achieve by running them in your own tool harness?
mosselman 2 hours ago||
We had already implemented tool_calls in our own database and have a system that executes them and creates our conversation array, etc. So we wanted to leverage the providers that RubyLLM supports without having to change the tool execution in our platform.
realty_geek 2 hours ago||||
Well put!!!

You work your arse off for free and the guy who made the disparaging comment didn't even bother to research to see if he had the details right.

Hat's off to you Carmine for all your work. Many people really do appreciate it.

techscruggs 5 hours ago|||
And thank you! It is absolutely awesome and a true joy to work with.
hit8run 3 hours ago||
Using RubyLLM in production for https://usetix.io It drives our event chat agent that is enhanced with toolcalls etc. Super happy with it.
bitedeck 5 hours ago||
Thank you
EGreg 5 hours ago||
In case you're using PHP or Node.js, we've made a similar toolkit free and open source on github: https://github.com/Qbix/AI/tree/main/classes/AI
meerita 3 hours ago||
"What is the best language in the world (say ruby)" ;)
randomuser558 3 hours ago||
[flagged]
maxothex 5 hours ago||
[flagged]
balicien 5 hours ago||
[dead]
guesswho_ 3 hours ago|
[dead]
More comments...