jan icon indicating copy to clipboard operation
jan copied to clipboard

feat: Threads can override and inherit default params from Assistants, Models, and Engine

Open dan-jan opened this issue 7 months ago • 11 comments

Tasks

  • [x] Eng Spec @dan-jan
    • [ ] Local Models
    • [ ] Remote Models (KIV)
  • [x] janhq/internal#66
  • Functionality
    • [x] Each Recommended Model should have default values defined in respective model.json
  • Documentation
    • [ ] Architecture section should contain page on relationship between Threads, Assistants, Models, Engines.
    • [ ] Docs page on Models Extension,
    • [ ] Docs page on Inference Extension
    • [ ] Docs page on Engine extensions
  • [ ] API Reference (i.e. Swaggerfile)
    • [ ] model.json params are well documented in Swaggerfile
    • [ ] assistant.json params are well documented in Swaggerfile
    • [ ] engine.json params are well documented in Swaggerfile

Spec

image

Overview

  • Threads are a core primitive in Jan, and the main means by which a user will interact with AI
    • A Thread is defined as an exchange between a User and an Assistant
  • A thread uses default params that are specified for that Assistant (and its associated Model(s) and Engine(s))
    • A user may choose to override these default params
    • Assistant params are inherited from assistant.json
    • Model params are inherited from the assistant.model's model.json
    • Engine params are inherited from model.engine's engine.json
  • The Thread UI offers an optional, slide-in "Right Panel" that allows the user to tinker and change params
    • Any user-specified, thread-level params are persisted in an associated thread.json
    • thread.json is usually empty, as it auto-inherits properties from the associated defaults
  • The Thread UI should prompt the user to "Reload" the model + engine if required
    • Model Params and Engine Params will usually require reload
    • We should find way to "automatically" reload it, if user sends new message to Assistant

Wireframes

image image image image

Excalidraw: https://link.excalidraw.com/l/kFY0dI05mm/3WHim5p2OLu

dan-jan avatar Nov 28 '23 14:11 dan-jan