core.processor

class celi_framework.core.processor.ProcessRunner(master_template, tool_implementations, llm_cache, primary_model_name, max_tokens, force_tool_every_n, callback=None, model_url=None, token_counter=None, sequential=False)

Bases: object

The ProcessRunner manages the overall CELI job. It’s primary job is to manage all fo the different sections that need to be completed. Each section is completed independently by a SectionProcessor.

The ProcessRunner handles waiting on the sections, which are usually run in parallel. It also coordinates any human input coming in and callbacks going out.

async add_human_input_on_section(section_id, input)
get_schema()
Return type:

Dict[str, str]

notify_completion()
async run()

Runs all sections of the document.

async wait_on_tasks()
celi_framework.core.processor.generate_tool_descriptions(cls)
Return type:

List[ToolDescription]