Documentation
¶
Index ¶
- Constants
- type AIAgent
- type AITask
- type Block
- func (b *Block) Accept() error
- func (b *Block) Bytes() []byte
- func (b *Block) Height() uint64
- func (b *Block) ID() string
- func (b *Block) Parent() ids.ID
- func (b *Block) Reject() error
- func (b *Block) Status() choices.Status
- func (b *Block) Time() uint64
- func (b *Block) Verify(ctx context.Context) error
- type Factory
- type GPUProvider
- type TaskResult
- type TaskStatus
- type VM
- func (vm *VM) AppGossip(ctx context.Context, nodeID ids.NodeID, msg []byte) error
- func (vm *VM) AppRequest(ctx context.Context, nodeID ids.NodeID, requestID uint32, deadline time.Time, ...) error
- func (vm *VM) AppRequestFailed(ctx context.Context, nodeID ids.NodeID, requestID uint32, ...) error
- func (vm *VM) AppResponse(ctx context.Context, nodeID ids.NodeID, requestID uint32, response []byte) error
- func (vm *VM) BuildBlock(ctx context.Context) (chain.Block, error)
- func (vm *VM) Connected(ctx context.Context, nodeID ids.NodeID, nodeVersion *version.Application) error
- func (vm *VM) CreateHandlers(context.Context) (map[string]interface{}, error)
- func (vm *VM) CreateStaticHandlers(context.Context) (map[string]interface{}, error)
- func (vm *VM) CrossChainAppRequest(ctx context.Context, chainID ids.ID, requestID uint32, deadline time.Time, ...) error
- func (vm *VM) CrossChainAppRequestFailed(ctx context.Context, chainID ids.ID, requestID uint32, appErr *core.AppError) error
- func (vm *VM) CrossChainAppResponse(ctx context.Context, chainID ids.ID, requestID uint32, msg []byte) error
- func (vm *VM) Disconnected(ctx context.Context, nodeID ids.NodeID) error
- func (vm *VM) GetBlock(ctx context.Context, blkID ids.ID) (chain.Block, error)
- func (vm *VM) GetBlockIDAtHeight(ctx context.Context, height uint64) (ids.ID, error)
- func (vm *VM) HealthCheck(context.Context) (any, error)
- func (vm *VM) Initialize(ctx context.Context, chainCtx *core.Context, db interface{}, ...) error
- func (vm *VM) LastAccepted(context.Context) (ids.ID, error)
- func (vm *VM) ParseBlock(ctx context.Context, blockBytes []byte) (chain.Block, error)
- func (vm *VM) SetPreference(ctx context.Context, blkID ids.ID) error
- func (vm *VM) SetState(ctx context.Context, state core.State) error
- func (vm *VM) Shutdown(context.Context) error
- func (vm *VM) Version(context.Context) (string, error)
Constants ¶
const (
Name = "aivm"
)
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AIAgent ¶
type AIAgent struct {
ID ids.ShortID `json:"id"`
Name string `json:"name"`
Capabilities []string `json:"capabilities"`
Subnet ids.ID `json:"subnet"`
Endpoint string `json:"endpoint"`
PublicKey []byte `json:"publicKey"`
}
AIAgent represents an AI agent or model provider
type AITask ¶
type AITask struct {
ID ids.ID `json:"id"`
Requester ids.ShortID `json:"requester"`
TaskType string `json:"taskType"`
Parameters []byte `json:"parameters"`
Status TaskStatus `json:"status"`
Result []byte `json:"result,omitempty"`
ProofOfWork []byte `json:"proofOfWork,omitempty"`
Fee uint64 `json:"fee"`
CreatedAt int64 `json:"createdAt"`
CompletedAt int64 `json:"completedAt,omitempty"`
}
AITask represents an AI computation task
type Block ¶
type Block struct {
// contains filtered or unexported fields
}
Block represents a block in the AI Chain
type GPUProvider ¶
type GPUProvider struct {
NodeID ids.NodeID `json:"nodeId"`
GPUCount int `json:"gpuCount"`
GPUType string `json:"gpuType"`
MemoryGB int `json:"memoryGB"`
Available bool `json:"available"`
PricePerHour uint64 `json:"pricePerHour"`
}
GPUProvider represents a GPU compute provider
type TaskResult ¶
type TaskResult struct {
TaskID ids.ID `json:"taskId"`
ExecutorID ids.ShortID `json:"executorId"`
Result []byte `json:"result"`
Proof []byte `json:"proof"`
ComputeTime uint64 `json:"computeTime"`
}
TaskResult represents the result of an AI task
type TaskStatus ¶
type TaskStatus uint8
TaskStatus represents the status of an AI task
const ( TaskPending TaskStatus = iota TaskAssigned TaskProcessing TaskCompleted TaskFailed )
type VM ¶
type VM struct {
// contains filtered or unexported fields
}
VM implements the chain.ChainVM interface for the AI Chain (A-Chain) This chain is specialized for AI computation and agent coordination
func (*VM) AppRequest ¶
func (vm *VM) AppRequest(ctx context.Context, nodeID ids.NodeID, requestID uint32, deadline time.Time, request []byte) error
AppRequest implements the core.AppHandler interface
func (*VM) AppRequestFailed ¶
func (vm *VM) AppRequestFailed(ctx context.Context, nodeID ids.NodeID, requestID uint32, appErr *core.AppError) error
AppRequestFailed implements the core.AppHandler interface
func (*VM) AppResponse ¶
func (vm *VM) AppResponse(ctx context.Context, nodeID ids.NodeID, requestID uint32, response []byte) error
AppResponse implements the core.AppHandler interface
func (*VM) BuildBlock ¶
BuildBlock implements the chain.ChainVM interface
func (*VM) Connected ¶
func (vm *VM) Connected(ctx context.Context, nodeID ids.NodeID, nodeVersion *version.Application) error
Connected implements the validators.Connector interface
func (*VM) CreateHandlers ¶
CreateHandlers implements the core.VM interface
func (*VM) CreateStaticHandlers ¶
CreateStaticHandlers implements the core.VM interface
func (*VM) CrossChainAppRequest ¶
func (vm *VM) CrossChainAppRequest(ctx context.Context, chainID ids.ID, requestID uint32, deadline time.Time, msg []byte) error
CrossChainAppRequest implements the core.VM interface
func (*VM) CrossChainAppRequestFailed ¶
func (vm *VM) CrossChainAppRequestFailed(ctx context.Context, chainID ids.ID, requestID uint32, appErr *core.AppError) error
CrossChainAppRequestFailed implements the core.VM interface
func (*VM) CrossChainAppResponse ¶
func (vm *VM) CrossChainAppResponse(ctx context.Context, chainID ids.ID, requestID uint32, msg []byte) error
CrossChainAppResponse implements the core.VM interface
func (*VM) Disconnected ¶
Disconnected implements the validators.Connector interface
func (*VM) GetBlockIDAtHeight ¶
GetBlockIDAtHeight implements the chain.ChainVM interface
func (*VM) HealthCheck ¶
HealthCheck implements the health.Checker interface
func (*VM) Initialize ¶
func (vm *VM) Initialize( ctx context.Context, chainCtx *core.Context, db interface{}, genesisBytes []byte, upgradeBytes []byte, configBytes []byte, toEngine chan<- core.Message, fxs []*core.Fx, appSender core.AppSender, ) error
Initialize implements the core.VM interface
func (*VM) LastAccepted ¶
LastAccepted implements the chain.ChainVM interface
func (*VM) ParseBlock ¶
ParseBlock implements the chain.ChainVM interface
func (*VM) SetPreference ¶
SetPreference implements the chain.ChainVM interface