LLmRegiteryByLeo/Src/Def.mqh
Nique_372 e0400f648a
2026-07-17 15:45:30 -05:00

101 lines
4.2 KiB
MQL5

//+------------------------------------------------------------------+
//| Defi.mqh |
//| Copyright 2026, Niquel Mendoza. |
//| https://www.mql5.com/ |
//+------------------------------------------------------------------+
#property copyright "Copyright 2026, Niquel Mendoza."
#property link "https://www.mql5.com/"
#property strict
#ifndef LLMREGISTERYBYLEO_SRC_DEF_MQH
#define LLMREGISTERYBYLEO_SRC_DEF_MQH
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
#include <TSN\\Json\\Json.mqh>
#include <TSN\\MQLArticles\\Utils\\Basic.mqh>
#include "EnumReg\\Main.mqh"
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
namespace TSN
{
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
#define LLMREG_ON_UPDATE (500)
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
#define LLMIDX_TLLMMODELS_ID (0)
#define LLMIDX_TLLMMODELS_ORG_ID (1)
#define LLMIDX_TLLMMODELS_NAME (2)
#define LLMIDX_TLLMMODELS_DESCRIPTION (3)
#define LLMIDX_TLLMMODELS_COST_IN (4)
#define LLMIDX_TLLMMODELS_COST_OUT (5)
#define LLMIDX_TLLMMODELS_RELEASE_DATE (6)
#define LLMIDX_TLLMMODELS_LAST_UPDATE_DATE (7)
#define LLMIDX_TLLMMODELS_FLAGS (8)
#define LLMIDX_TLLMMODELS_IN_MODALS (9)
#define LLMIDX_TLLMMODELS_OUT_MODALS (10)
#define LLMIDX_TLLMMODELS_CTX_WINDOW (11)
#define LLMIDX_TLLMMODELS_CTX_OUTPUT (12)
#define LLMIDX_TLLMMODELS_CTX_INPUT (13)
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
#define LLMDEF_FLAG_TOOLS 1
#define LLMDEF_FLAG_TEMPERATURE 2
#define LLMDEF_FLAG_OPEN_WEIGHTS 4
#define LLMDEF_FLAG_REASONING 8
#define LLMDEF_FLAG_STRUCTURED_OUTPUT 16
//---
#define LLMDEF_MODAL_TEXT 1
#define LLMDEF_MODAL_AUDIO 2
#define LLMDEF_MODAL_VIDEO 4
#define LLMDEF_MODAL_IMAGE 8
#define LLMDEF_MODAL_PDF 16
//---
#define LLMREG_FILENAME_SQL ("LLmRegistery.db")
#define LLMREG_FILENAME_CONFIRM_JSON ("Registery.json")
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
struct LLmModel
{
string id; // id del llm en su org
string org_id; // org al cual pertenece
string name; // nombre "pretty"
string description; // descripcion
double cost_in; // costo de entrada
double cost_out; // costo de salida
datetime release_date; // fecha de lanzamiento
datetime last_update_date; // fecha de update
uint flags; // temperature \ tools \ open wight \ reasoning \ structured output
// text \ image \ audio \ video
uint in_modals; // flags de modales in
uint out_modals; // flags de modales out
int context_window; // ventaa de contexto
int context_output; // ventana de salida
int context_input; // ventana de entrada
};
//---
struct LlmModelOrg
{
string id; // id de la org
string name; // nombre
string doc; // link a docs..
};
}
//+------------------------------------------------------------------+
#endif //LLMREGISTERYBYLEO_SRC_DEF_MQH