yaze 0.3.2
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
common.h
Go to the documentation of this file.
1#ifndef YAZE_SRC_CLI_SERVICE_AI_COMMON_H_
2#define YAZE_SRC_CLI_SERVICE_AI_COMMON_H_
3
4#include <map>
5#include <string>
6#include <vector>
7
8namespace yaze {
9namespace cli {
10
11// Represents a request from the AI to call a tool.
12struct ToolCall {
13 std::string tool_name;
14 std::map<std::string, std::string> args;
15};
16
17// A structured response from an AI service.
19 // A natural language response to the user.
20 std::string text_response;
21
22 // A list of tool calls the agent wants to make.
23 std::vector<ToolCall> tool_calls;
24
25 // A list of z3ed commands to be executed.
26 std::vector<std::string> commands;
27
28 // The AI's explanation of its thought process.
29 std::string reasoning;
30
31 // Provider + model metadata so the UI can show badges / filters.
32 std::string provider;
33 std::string model;
34
35 // Basic timing + parameter telemetry.
36 double latency_seconds = 0.0;
37 std::map<std::string, std::string> parameters;
38
39 // Optional warnings surfaced by the backend (e.g. truncated context).
40 std::vector<std::string> warnings;
41};
42
43// Represents a model available for use
44struct ModelInfo {
45 std::string name; // Unique identifier / name to use in API calls
46 std::string display_name; // User-friendly name
47 std::string provider; // "ollama", "gemini", etc.
48 std::string description; // Short description or family
49 std::string family; // Model family (e.g. "llama", "gemini")
50 std::string parameter_size; // Size string (e.g. "7B")
51 std::string quantization; // e.g. "Q4_K_M"
52 uint64_t size_bytes = 0;
53 bool is_local = false; // true if running locally
54};
55
56} // namespace cli
57} // namespace yaze
58
59#endif // YAZE_SRC_CLI_SERVICE_AI_COMMON_H_
std::vector< std::string > commands
Definition common.h:26
std::string model
Definition common.h:33
std::string reasoning
Definition common.h:29
std::vector< ToolCall > tool_calls
Definition common.h:23
std::string text_response
Definition common.h:20
std::string provider
Definition common.h:32
std::map< std::string, std::string > parameters
Definition common.h:37
std::vector< std::string > warnings
Definition common.h:40
std::string display_name
Definition common.h:46
std::string provider
Definition common.h:47
uint64_t size_bytes
Definition common.h:52
std::string quantization
Definition common.h:51
std::string name
Definition common.h:45
std::string family
Definition common.h:49
std::string description
Definition common.h:48
std::string parameter_size
Definition common.h:50
std::map< std::string, std::string > args
Definition common.h:14
std::string tool_name
Definition common.h:13