feat(audit): add pricing signature guards and reporting
Add snapshot, signature, and drift guard support for Vertex AI, Cloudflare Workers AI, and Perplexity API, backed by a queryable audit table and recent-window view. This commit also wires the audit query layer into daily signal materialization and report generation so structure drift becomes a first-class signal instead of a log-only artifact.
This commit is contained in:
10
scripts/testdata/cloudflare_pricing_sample.md
vendored
Normal file
10
scripts/testdata/cloudflare_pricing_sample.md
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
## LLM model pricing
|
||||
|
||||
| Model | Price in Tokens | Price in Neurons |
|
||||
| -------------------------------------------- | --------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
|
||||
| @cf/meta/llama-3.2-1b-instruct | $0.027 per M input tokens $0.201 per M output tokens | 2457 neurons per M input tokens 18252 neurons per M output tokens |
|
||||
| @cf/meta/llama-3.3-70b-instruct-fp8-fast | $0.293 per M input tokens $2.253 per M output tokens | 26668 neurons per M input tokens 204805 neurons per M output tokens |
|
||||
| @cf/qwen/qwen2.5-coder-32b-instruct | $0.660 per M input tokens $1.000 per M output tokens | 60000 neurons per M input tokens 90909 neurons per M output tokens |
|
||||
| @cf/moonshotai/kimi-k2.5 | $0.600 per M input tokens $0.100 per M cached input tokens $3.000 per M output tokens | 54545 neurons per M input tokens 9091 neurons per M cached input tokens 272727 neurons per M output tokens |
|
||||
|
||||
## Embeddings model pricing
|
||||
9
scripts/testdata/perplexity_pricing_sample.md
vendored
Normal file
9
scripts/testdata/perplexity_pricing_sample.md
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
# Models
|
||||
|
||||
| Model | Input Price | Output Price | Cache Read Price | Provider Documentation |
|
||||
| -------------------------------------- | -------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | -------------------- | ----------------------------------------------------------------------------------------------------------- |
|
||||
| `perplexity/sonar` | \$0.25 / 1M tokens | \$2.50 / 1M tokens | \$0.0625 / 1M tokens | [Sonar](https://docs.perplexity.ai/docs/sonar/models/sonar) |
|
||||
| `anthropic/claude-sonnet-4-6` | \$3 / 1M tokens | \$15 / 1M tokens | \$0.30 / 1M tokens | [Claude Sonnet 4.6](https://www.anthropic.com/news/claude-sonnet-4-6) |
|
||||
| `openai/gpt-5.4` | \$2.50 / 1M tokens | \$15.00 / 1M tokens | \$0.25 / 1M tokens | [GPT-5.4](https://platform.openai.com/docs/models/gpt-5.4) |
|
||||
| `google/gemini-3.1-pro-preview` | \$2.00 / 1M tokens (≤200k context)<br />\$4.00 / 1M tokens (>200k context) | \$12.00 / 1M tokens (≤200k context)<br />\$18.00 / 1M tokens (>200k context) | 90% discount | [Gemini 3.1 Pro](https://ai.google.dev/gemini-api/docs/models#gemini-3.1-pro-preview) |
|
||||
| `xai/grok-4.3` | \$1.25 / 1M tokens | \$2.50 / 1M tokens | \$0.20 / 1M tokens | [Grok 4.3](https://docs.x.ai/developers/models) |
|
||||
73
scripts/testdata/vertex_pricing_sample.html
vendored
Normal file
73
scripts/testdata/vertex_pricing_sample.html
vendored
Normal file
@@ -0,0 +1,73 @@
|
||||
<h3 id="gemini-models-3" class="cloud-jump-section" data-text="Gemini 3" tabindex="-1">Gemini 3</h3>
|
||||
<div>
|
||||
<section>
|
||||
<h3 id="standard" data-text="Standard" tabindex="-1">Standard</h3>
|
||||
<table class="style0">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Model</th>
|
||||
<th>Type</th>
|
||||
<th>Price (/1M tokens) <= 200K input tokens</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td rowspan="3">Gemini 3.1 Pro Preview</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Input (text, image, video, audio)</td>
|
||||
<td>$2</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Text output (response and reasoning)</td>
|
||||
<td>$12</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td rowspan="4">Gemini 3.1 Flash Image Preview</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Input (text, image)</td>
|
||||
<td>$0.50</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Text output (response and reasoning)</td>
|
||||
<td>$3</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Image Output***</td>
|
||||
<td>$60</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td rowspan="4">Gemini 3.1 Flash-Lite</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Input (text, image, video)</td>
|
||||
<td>$0.25 (Global)<br><br>$0.275 (Non-global)*</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Input (audio)</td>
|
||||
<td>$0.5 (Global)<br><br>$0.55 (Non-global)*</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Text output (response and reasoning)</td>
|
||||
<td>$1.5 (Global)<br><br>$1.65 (Non-global)*</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td rowspan="4">Gemini 3 Flash Preview</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Input (text, image, video)</td>
|
||||
<td>$0.5</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Input (audio)</td>
|
||||
<td>$1</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Text output (response and reasoning)</td>
|
||||
<td>$3</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</section>
|
||||
</div>
|
||||
Reference in New Issue
Block a user