feat: wire cf-text for recipe suggestions, substitutions, and expiry advice #70

Closed
opened 2026-04-08 21:56:24 -07:00 by pyr0ball · 0 comments
Owner

Summary

Integrate cf-text (circuitforge-core service module) as the text generation backend for Kiwi's AI-driven features, replacing or supplementing the current ollama path.

Scope

  • Recipe suggestions: generate recipes from available pantry items
  • Ingredient substitutions: suggest alternatives when an item is missing or expired
  • Expiry advice: plain-language guidance on what to use first, storage tips
  • Leftover ideas: prompt-driven creative use of near-expiry items (Phase 2)

Why cf-text vs. ollama

  • Shared instance with Peregrine — if both are running, a warm cf-text model serves both products without double-loading VRAM
  • cf-orch managed — VRAM budget and eviction handled automatically; Kiwi doesn't need to manage model lifecycle
  • Streaming — recipe generation can stream to the Vue frontend for a responsive UX
  • Works on low-VRAM nodes — 3B Q4 model fits on strahl (6 GB) and navi's T400 (4 GB)

Dependencies

  • Circuit-Forge/circuitforge-core cf-text module
  • cf-orch node profiles updated with cf-text service entries

Notes

  • Calm, non-urgent framing required for all AI output (no panic/urgency UX — see existing Kiwi design constraint)
  • Free tier: local model only; Paid tier: cloud LLM option
  • BYOK users can point cf-text at OpenAI-compatible endpoint
## Summary Integrate `cf-text` (circuitforge-core service module) as the text generation backend for Kiwi's AI-driven features, replacing or supplementing the current ollama path. ## Scope - **Recipe suggestions**: generate recipes from available pantry items - **Ingredient substitutions**: suggest alternatives when an item is missing or expired - **Expiry advice**: plain-language guidance on what to use first, storage tips - **Leftover ideas**: prompt-driven creative use of near-expiry items (Phase 2) ## Why cf-text vs. ollama - Shared instance with Peregrine — if both are running, a warm cf-text model serves both products without double-loading VRAM - cf-orch managed — VRAM budget and eviction handled automatically; Kiwi doesn't need to manage model lifecycle - Streaming — recipe generation can stream to the Vue frontend for a responsive UX - Works on low-VRAM nodes — 3B Q4 model fits on strahl (6 GB) and navi's T400 (4 GB) ## Dependencies - `Circuit-Forge/circuitforge-core` cf-text module - cf-orch node profiles updated with `cf-text` service entries ## Notes - Calm, non-urgent framing required for all AI output (no panic/urgency UX — see existing Kiwi design constraint) - Free tier: local model only; Paid tier: cloud LLM option - BYOK users can point cf-text at OpenAI-compatible endpoint
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: Circuit-Forge/kiwi#70
No description provided.