Skip to content

elm/i_elm.hpp

Abstract interface for Expert Language Models (doc 03 §5.2) More...

Namespaces

Name
sgns
sgns::neoswarm
sgns::neoswarm::elm

Classes

Name
class sgns::neoswarm::elm::IELM
Abstract interface for Expert Language Models.

Detailed Description

Abstract interface for Expert Language Models (doc 03 §5.2)

Date: 2026-07-16

Source code

#ifndef NEOSWARM_ELM_IELM_HPP
#define NEOSWARM_ELM_IELM_HPP

#include "common/error.hpp"
#include "common/types.hpp"

#include <string>

namespace sgns::neoswarm::elm
{
    class IELM
    {
        public:
        virtual ~IELM() = default;

        virtual std::string GetName() const = 0;

        virtual ELMRole GetRole() const = 0;

        virtual bool IsLoaded() const = 0;

        virtual outcome::result<void> Load( const std::string& model_path ) = 0;

        virtual outcome::result<std::string> Process( const std::string& input, const ELMContext& context ) = 0;

        virtual float GetConfidence() const = 0;
    };

} // namespace sgns::neoswarm::elm

#endif // NEOSWARM_ELM_IELM_HPP

Updated on 2026-07-25 at 22:56:57 +0000