Entropic 2.11.1
Local-first agentic inference engine
Loading...
Searching...
No Matches
orchestrator.cpp File Reference

ModelOrchestrator implementation. More...

#include <entropic/inference/orchestrator.h>
#include <entropic/inference/speculative_compat.h>
#include <entropic/interfaces/i_inference_backend.h>
#include <entropic/types/logging.h>
#include "llama_cpp_backend.h"
#include "empty_content_diagnosis.h"
#include "device_memory.h"
#include "vram_footprint.h"
#include "response_parse.h"
#include "mtp_envelope.h"
#include <entropic/core/stream_think_filter.h>
#include "adapters/adapter_registry.h"
#include <entropic/inference/adapters/adapter_base.h>
#include <llama.h>
#include <nlohmann/json.hpp>
#include <cstdlib>
#include <filesystem>
Include dependency graph for orchestrator.cpp:

Go to the source code of this file.

Namespaces

namespace  entropic
 Activate model on GPU (WARM → ACTIVE).
 

Functions

static bool entropic::mtp_head_guard_fires (LlamaCppBackend *draft, GenerationResult &result)
 gh#107: return true (and populate result) when draft looks like an MTP head GGUF routed to the classical separate-draft path.
 
static void entropic::stage_active_tools (InferenceBackend *model, const GenerationParams &params, bool require_tool_call)
 Stage the turn's tool defs on the backend for common_chat (gh#87).
 
static void entropic::apply_adapter_parse (InferenceBackend *model, ChatAdapter *adapter, GenerationResult &result)
 Split tool calls out of a result (gh#87: common_chat or adapter).
 
static void entropic::warn_if_content_vanished (const GenerationResult &result)
 Explain a turn that produced tokens but delivered no content (gh#137).
 
static void entropic::warn_if_budget_starved_required_turn (const GenerationResult &result, const std::string &tier_name, const std::unordered_map< std::string, TierConfig > &tiers)
 Diagnose a mandatory-tool turn that ran out of budget (gh#134).
 
static void entropic::warn_turn_diagnostics (const GenerationResult &result, const std::string &tier_name, const std::unordered_map< std::string, TierConfig > &tiers)
 Report every post-turn diagnostic from one call site (gh#137).
 
static void entropic::log_orchestration (const GenerationResult &result, const std::string &selected, const std::string &adapter_name, const GenerationParams &params, double routing_ms, double swap_ms)
 Log the per-orchestration tier/adapter/timing summary.
 
static void entropic::stream_token_trampoline (const char *data, std::size_t len, void *ud)
 Trampoline: bridges TokenCallback C signature to std::function.
 
static FootprintInputs entropic::footprint_inputs_for (const TierConfig &tier_cfg, uint64_t weights_bytes, int vram_reserve_mb)
 Gather a tier's footprint inputs for the pure estimator.
 
static llama_model * entropic::resolve_target_model (const std::shared_ptr< InferenceBackend > &tier_backend)
 Resolve the active main-tier llama_model* for compat lookup.
 
static std::string entropic::normalize_grammar_key (const std::string &grammar_value)
 Normalize a frontmatter grammar value to a registry key.
 
ENTROPIC_EXPORT void entropic::apply_tier_sampler_overrides (GenerationParams &params, const TierSamplerOverrides &ov)
 Apply per-tier sampler overrides to params.
 
static nlohmann::json entropic::make_residency_entry (const std::string &name, const std::filesystem::path &path, int context_length, size_t footprint, int vram_reserve_mb, long long last_ms)
 JSON serialization of the current residency set.
 

Detailed Description

ModelOrchestrator implementation.

Model pool deduplication, per-tier adapters, VRAM lifecycle, tier routing via router complete(), swap logic, and grammar registry integration.

Version
1.9.3

Definition in file orchestrator.cpp.