spchless docs
  • ABOUT US
    • 🙌Introduction
    • 🎯Mission y Vision
  • TECHNOLOGY
    • 🗣️TTS (Text-To-Speech)
      • How it works
      • Use Cases
    • ⛓️Decentralized AI Network
      • Actors
      • Task Process
      • Training Process
      • Preventing Exploits
      • Private Voice Cloning and Data Storage
  • spchless bot
    • 💫Overview and Functionalities
    • 📚Usage Instructions
  • STRATEGY
    • 🗺️Roadmap
    • 👨‍💼Sustainability Strategy
    • 🪙Tokenomics
    • ✍️Token Usage
  • POLICIES
    • $SPCH Token Disclaimer
    • Terms of Service
    • Acceptable Use Policy
    • Refund Policy
Powered by GitBook
On this page
  1. TECHNOLOGY
  2. Decentralized AI Network

Task Process

PreviousActorsNextTraining Process

Last updated 7 months ago

Task Process Overview

The Text-to-Speech (TTS) task process involves multiple actors working in tandem, including clients, training nodes, processor nodes, and validator nodes. The process ensures efficient task execution with a balance of privacy, quality, and cost.

Step 1: Client Interaction and Data Submission

The client initiates a TTS task by providing the desired specifications (voice characteristics, , pitch, tone, etc.) and the text to be synthesized. If the requested voice and details are not pre-trained, the client must supply additional training data, such as voice samples and the process continue on the Training Process.

Voice samples, text and details provided are encrypted using symmetric encryption before submission, ensuring data remains private throughout processing. Only authorized nodes can decrypt and access the data for the duration of the task.

Step 2: Cost Calculation and Node Selection

The network calculates the task’s cost by selecting processor, training, and validator nodes using a multi-objective optimization function.

CostTask=min⁡i∈NP(CiQi)+min⁡j∈NV(CjQj)+min⁡k∈NT(CkQk)\text{Cost}_{\text{Task}} = \min_{i \in N_P} \left( \frac{C_i}{Q_i} \right) + \min_{j \in N_V} \left( \frac{C_j}{Q_j} \right) + \min_{k \in N_T} \left( \frac{C_k}{Q_k} \right)CostTask​=i∈NP​min​(Qi​Ci​​)+j∈NV​min​(Qj​Cj​​)+k∈NT​min​(Qk​Ck​​)

Where:

Ci=CostForNodesiQi=QualityScoreForNodesiNP=SubsetsOfProcessorNodesNV=SubsetsOfValidatorNodesNT=SubsetsOfTrainingNodesC_i = CostForNodes_i \newline Q_i = QualityScoreForNodes_i \newline N_P = SubsetsOfProcessorNodes \newline N_V = SubsetsOfValidatorNodes \newline N_T = SubsetsOfTrainingNodesCi​=CostForNodesi​Qi​=QualityScoreForNodesi​NP​=SubsetsOfProcessorNodesNV​=SubsetsOfValidatorNodesNT​=SubsetsOfTrainingNodes

This balances the cost against the quality of each node to achieve optimal efficiency.

Step 3: Payment and Smart Contract Management

If the Client accepts the cost, he must send tokens to a smart contract.

Tokens sent by the client are locked into an escrow contract that only releases payments upon successful completion and validation of the task, mitigating risks for clients and nodes.

Step 4: Task Execution by Processor and Training Nodes

The system distributes the TTS task into parallel subtasks across processor nodes and training nodes. Each node handles a specific phase, such as the ones explained in the How It Works TTS section of this documentation.

Step 5: Validation of Outputs

Validator nodes assess the accuracy of subtasks using methods like speech-to-text (STT) for content verification, voice embedding matching for identity validation, and automated audio quality metrics.

Validation follows a consensus mechanism, where a majority vote among validators determines the task's success

Rfinal=arg⁡max⁡r∈{0,1}∑v∈NV1rv=rR_{\text{final}} = \arg\max_{r \in \{0,1\}} \sum_{v \in N_V} \mathbb{1}_{r_v = r}Rfinal​=argr∈{0,1}max​v∈NV​∑​1rv​=r​

Where:

rv=VoteFromValidatorvRfinal=FinalValidationResultr_v = VoteFromValidator_v \newline R_{\text{final}} = FinalValidationResultrv​=VoteFromValidatorv​Rfinal​=FinalValidationResult

Step 6: Reward and Penalty Distribution

Once the validation is complete, rewards and penalties are distributed based on the performance of each node. Nodes that completed their tasks correctly are rewarded, and those that failed are penalized.

Rewardi={R×Qi,if subtask is validated correctly−P×Qi,if subtask is invalid\text{Reward}_i = \begin{cases} R \times Q_i, & \text{if subtask is validated correctly} \\ -P \times Q_i, & \text{if subtask is invalid} \end{cases}Rewardi​={R×Qi​,−P×Qi​,​if subtask is validated correctlyif subtask is invalid​

Where:

R=BaseRewardP=BasePenaltyQi=QualityScoreForNodeiR = BaseReward \newline P = BasePenalty \newline Q_i = QualityScoreForNode_iR=BaseRewardP=BasePenaltyQi​=QualityScoreForNodei​

If the validators determine that a node has not properly completed its subtask, the task will be terminated, and the smart contract will be notified. Scores will be adjusted and the majority of the cost will be refunded to the client.

BaseReward and BasePenalty amounts are subject to changes based on network needs.

⛓️
Task Process Diagram