'double', 'output_price_per_million' => 'double', 'created_at' => 'datetime', 'updated_at' => 'datetime', ]; } // Accessors public function getInputPriceFormattedAttribute() { return '$' . number_format($this->input_price_per_million, 2) . '/M'; } public function getOutputPriceFormattedAttribute() { return '$' . number_format($this->output_price_per_million, 2) . '/M'; } /** * Calculate cost for given token counts */ public function calculateCost($inputTokens, $outputTokens) { $inputCost = ($inputTokens / 1000000) * $this->input_price_per_million; $outputCost = ($outputTokens / 1000000) * $this->output_price_per_million; return $inputCost + $outputCost; } }