Stream of Consciousness

Mark Eschbach's random writings on various topics.

Engineering notes: improving Resume AI agent

Categories: programming

Tags: ai architecture

My current resume AI agent uses a chain of responsibility like the following.

---
config:
    class:
        hideEmptyMembersBox: true
---
classDiagram
    class chat
    chat: + query(input,output chan~string~) error
    <> chat
    llm --|> chat
    rate_limiter --|> chat
    security --|> chat
    security --* chat : next
    
    userSession --> chat : invokes

A user session is built via an invocation against a Mux handler in the following manner:

sequenceDiagram
    mux -) handler: on http request
    handler ->> +websocketUpgrader: start session
    websocketUpgrader -->> -handler: with session
    handler ->> sessionManager: register session
    sessionManager -->> handler: started
    par session reader
        handler -) readPump : spawn and start
    and session writer
        handler -) writePump : spawn and sart
    end