Gemini-based AI Coach

If you’re trying to work with Google’s Gemini AI as a training coach/sparring partner

as For a while now, I’ve been tinkering on a coaching project. I started out just tracking overall training time in a google sheet about 10 years ago. That’s all based on training data, of course. No automation.

Then when chatGPT came out, of course, I started asking questions about how to train, etc. chatGPT didn’t quite do it for me, so I moved to Perplexity. It eventually “forgot” an entire training thread, which got me to ditch it.

Finally, I’ve moved to Gemini, where you have options:

  1. You can just do a thread and manually copy and paste (or just reference) your key/all wellness and workout data.
  2. You can create a semi-automated setup - maybe even in a shareable gem, where data is automatically copied from intervals.icu to a google sheet, from where you can easily copy that data to your coaching AI of choice. Theoretically, you should be able to ask Gemini about the data in the sheet, but for me it hallucinates. Any help with this would be appreciated as it would create a fully automated coach.
  3. You can use Google’s AIstudio to create API calls directly from Gemini to intervals.icu. This would eliminate the google sheets go-between - if you can avoid that it hallucinates.

Anyway, this is all a hobby project of mine, which isn’t intended to become a business. If anyone wants to join forces on bouncing ideas and/or has feedback on what I can try to solve my challenges with hallucinating, I would be greatful.

Either way, I hope you all train well and have fun!

#aicoach #gemini #googlesheets #integration

3 Likes

Hi, perhaps you want to check out MyTrainPal

It’s an app specifically to solve this end-to-end for Intervals.icu athletes:

  • Direct Intervals.icu ingestion (no copy/paste, no sheet middleman)
  • Structured coaching context instead of dumping raw logs into chat
  • Deterministic prompts with cited data points (so recommendations are traceable)
  • Persistent athlete memory outside a single Gemini thread

The key is not just giving AI access to data, but removing all the noise first with normal non-AI algorithms.

In practice, this eliminates most hallucination patterns you described and gives a usable “always-on” AI coach workflow.

1 Like

Interesting, @Krzysztof . Free forever?

Free with limited credits quota, yes. But if more people start using it, I would need to adjust it so I don’t lose hundreds of $$ on LLM API costs each month. I build this tool for me and I’m happy to share it. For now the cost is acceptable for me, but unfortunately I can’t afford to subsidize the tokens if suddenly thousands of people will want to use it.

1 Like

Hey @gubbbe

The hallucination problem is one of the things that led me to build Section 11. The root cause is that LLMs can’t do math reliably, so if you feed them raw data and ask them to calculate TSS, CTL, zone distributions, etc., they’ll confidently return incorrect results.

The fix that worked for me: pre-calculate everything in the data pipeline before the AI ever sees it, then embed instructions telling the AI to use the values, never recalculate them. Works across ChatGPT, Claude, Grok, Gemini, Mistral, same data, same structure.

Section 11 can auto-sync from Intervals.icu via GitHub, so no copy-paste or Google Sheets middleman. Setup is not too complicated, guides for everything.

Free and open source: GitHub - CrankAddict/section-11: Evidence-based endurance coaching protocol for AI and LLMs. Deterministic training guidance with Intervals.icu integration.

More context and updates in my thread: https://forum.intervals.icu/t/section-11-open-protocol-for-ai-endurance-coaching-chatgpt-claude-grok-mistral

1 Like

Ich habe meinen Gemini Radcoach seit 5 Wochen im Einsatz und schicke ihm meine aktuellen Trainingstouren als csv-stream. Zusätzlich die Daten von Schlafpuls und HRV von meiner Samsung watch. Dazu habe ich noch meine strava activities.csv hochgeladen. Aus diesen Daten wird mir ein wöchentlicher Trainingsplan erstellt. Diesen kann ich aber im Dialog noch auf meine Verhältnisse anpassen, wie bei einem echten Trainer.

1 Like

Thanks for sharing, @W_Greiner ! Trainingstouren as csv AND strava as csv seems double?

It sounds like we do the same with two important differences:

  1. I have a google sheet middle-man.
  2. You get it to make a weekly plan for you.

Is it OK for you to go through the details of how you’ve set it up?

OK, I really like this A LOT, @CrankAddict !! Doesn’t look to challenging to implement. Probably I’ll try to create a Gemini Gem soon using your model.

Where would you like any new ideas?

1 Like

Glad to hear it :slightly_smiling_face:

Please share ideas in the dedicated project thread, or open a GitHub Issue if it’s something more concrete:

Either works — Issues are just easier to track

@gubbe Es gibt inzwischen mehrere youtube videos zum Thema:

  1. https://youtu.be/q-QXJFgu9ls?list=TLGG0aTiyVOKykwxOTAyMjAyNg
  2. https://youtu.be/kFAPQNojx_U?list=TLGGt6ThwQ5ERDsxOTAyMjAyNg

Die activities.csv dient als Basis für den Beginn. Die durchgeführten Trainingsfahrten werden als CSV.stream aus intervals.icu hochgeladen und dann analysiert und für die weitere Planung besprochen.

2 Likes

Try www.maxiom.io. it is a chatgpt-like tool built for endurance athletes.

1 Like

@W_Greiner es reicht mittlweile auch ein Bildschirmfoto vom Intervall.cu.
Nutze meinem Coach seit 1 Jahr für Rad und Lauf. Ziehe aber jetzt auch Richtung Gemini um. VG Ansgar

1 Like

Thanks for sharing, @Jeff_Spiro . I think Maxiom will bump into the problem most creators will have to face: if you can build something, someone else is likely to not want to pay $20/month and instead try to build that same thing themselves. The software subscription model is under heavy pressure because most value has moved to AI.

1 Like

The hallucination issue is definitely the biggest challenge when trying to automate coaching with LLMs. I’ve found that providing very specific context about the column headers in the sheet sometimes helps Gemini stay on track, but it’s still a bit hit or miss without a rigid data structure.

1 Like

Just wanted to share an alternative workflow that’s been working well for me. I’m currently using Gemini Pro (1 year free subscription with my old university email still available) paired with the Gemini CLI.

I relies on MCP to bridge Gemini with my fitness and health data(Intervals, Cronometer, and Garmin). To handle context, I maintain a single, continuous conversation and simply use a compression strategy whenever the model hits its limit. It’s been a very stable way to keep all my metrics in one place.

I don’t use it to plan for my workout, but more give me context and insight on where I am and how to fuel my day.

Thanks for the feedback. Maxiom seems to be one of the only AI chatbots focused on endurance and fitness. I actually found it from a recommendation by ChatGPT :).

When I compare responses from Maxiom versus ChapGPT, Gemini, Perplexity, etc., I find that I need Maxiom since the level of expertise is higher and needed by me since I am training at levels where specificity is important for questions on load impacts, recovery, etc.

Another example is maxiom.io really helped me compared to other vendors was on my recovery from plantar fasiopathy where chatgpt gave me directional, yet incorrect suggestions.

As you know, ai chatbots are only as good as the test used to train the bots. I understand that Maxiom is trained on data from labs that study world class endurance athletes.