#pragma once #include "../../models/infinilm_model.hpp" namespace infinilm::engine { class GraphCompiler { public: using Compiled = std::tuple< std::shared_ptr, std::shared_ptr>; explicit GraphCompiler(const std::shared_ptr &model) : model_(model) {} virtual ~GraphCompiler() = default; virtual void compile() = 0; virtual Compiled get_compiled(const InfinilmModel::Input &input) = 0; protected: std::shared_ptr model_; }; } // namespace infinilm::engine