chore: import upstream snapshot with attribution
CI / Shell Format Check (push) Has been cancelled
CI / Check Ruby (3.4) (push) Has been cancelled
CI / CI Config (push) Has been cancelled
CI / Test on Node ${{ matrix.node }} and ${{ matrix.os }}${{ matrix.shard && format(' (shard {0}/3)', matrix.shard) || '' }} (push) Has been cancelled
CI / Build on Node ${{ matrix.node }} (push) Has been cancelled
CI / Style Check (push) Has been cancelled
CI / Generate Assets (push) Has been cancelled
CI / Check Python (3.14) (push) Has been cancelled
CI / Check Python (3.9) (push) Has been cancelled
CI / Build Docs (push) Has been cancelled
CI / Code Scan Action (push) Has been cancelled
CI / Site tests (push) Has been cancelled
CI / webui tests (push) Has been cancelled
CI / Run Integration Tests (push) Has been cancelled
CI / Run Smoke Tests (push) Has been cancelled
CI / Go Tests (push) Has been cancelled
CI / Share Test (push) Has been cancelled
CI / Redteam (Production API) (push) Has been cancelled
CI / Redteam (Staging API) (push) Has been cancelled
CI / GitHub Actions Lint (push) Has been cancelled
CI / Check Ruby (3.0) (push) Has been cancelled
release-please / release-please (push) Has been cancelled
release-please / build (push) Has been cancelled
release-please / publish-npm (push) Has been cancelled
release-please / publish-npm-backfill (push) Has been cancelled
release-please / docker (push) Has been cancelled
release-please / publish-code-scan-action (push) Has been cancelled
release-please / attest-code-scan-action (push) Has been cancelled
Deploy local.promptfoo.app / Deploy to Cloudflare Pages (push) Has been cancelled
Test and Publish Multi-arch Docker Image / test (push) Has been cancelled
Test and Publish Multi-arch Docker Image / build-docker-and-push-digests (map[digest-suffix:linux-amd64 platform:linux/amd64 runner:ubuntu-latest]) (push) Has been cancelled
Test and Publish Multi-arch Docker Image / build-docker-and-push-digests (map[digest-suffix:linux-arm64 platform:linux/arm64 runner:ubuntu-24.04-arm]) (push) Has been cancelled
Test and Publish Multi-arch Docker Image / merge-docker-digests (push) Has been cancelled
Test and Publish Multi-arch Docker Image / Attest Multi-arch Image (push) Has been cancelled
Validate Renovate Config / Validate Renovate Configuration (push) Has been cancelled

This commit is contained in:
wehub-resource-sync
2026-07-13 13:24:08 +08:00
commit 0d3cb498a3
5438 changed files with 1316560 additions and 0 deletions
+29
View File
@@ -0,0 +1,29 @@
# provider-moonshot (Moonshot AI / Kimi)
You can run this example with:
```bash
npx promptfoo@latest init --example provider-moonshot
cd provider-moonshot
```
## Usage
Set your `MOONSHOT_API_KEY` environment variable. You can get a key from the [Kimi (Moonshot) platform](https://platform.kimi.ai/console/api-keys).
Then run:
```bash
promptfoo eval
```
View the results with `promptfoo view`.
## What this shows
- Two Moonshot model families compared on a short summarisation task, both on a single `MOONSHOT_API_KEY`:
- `kimi-k2.6` — Moonshot's flagship Kimi K2 **thinking** model. It reasons before answering; `showThinking: false` keeps that reasoning out of the graded output.
- `moonshot-v1-8k` — a generation model with a configurable `temperature`.
- Plain `icontains` / `icontains-any` assertions, so the example runs with nothing but a `MOONSHOT_API_KEY` (Moonshot does not expose an embeddings endpoint).
Kimi K2 (`kimi-k2.x`) models pin `temperature` and the other sampling params to fixed values, so leave them unset — the provider handles that for you. Model names rotate over time; if one 404s, pick a current id from the [Kimi model list](https://platform.kimi.ai/docs/api/list-models).
@@ -0,0 +1,45 @@
# yaml-language-server: $schema=https://promptfoo.dev/config-schema.json
description: Moonshot AI (Kimi) provider demo
prompts:
- 'In one sentence, summarise: {{passage}}'
# Both models run on a single `MOONSHOT_API_KEY`.
# - kimi-k2.6 is Moonshot's flagship Kimi K2 "thinking" model. It pins
# temperature and the other sampling params to fixed values, so the provider
# sends no sampling defaults for kimi-* models — just leave them unset.
# `showThinking: false` keeps its reasoning out of the graded answer.
# - moonshot-v1-8k is a generation model that accepts arbitrary sampling, so
# we set a low temperature for a deterministic comparison.
providers:
- id: moonshot:kimi-k2.6
label: 'Kimi K2.6'
config:
showThinking: false
- id: moonshot:moonshot-v1-8k
label: 'Moonshot v1 8k'
config:
temperature: 0.2
max_tokens: 1024
tests:
- vars:
passage: |
On the surface, the Antikythera mechanism was a corroded lump of bronze pulled from a Roman-era
shipwreck off Greece in 1901. Decades of x-ray and tomographic analysis revealed it to be an
intricate analogue computer, with dozens of geared dials that tracked the Sun and Moon, predicted
eclipses, and modelled the irregular motion of the lunar orbit using an epicyclic gear train.
assert:
- type: icontains
value: Antikythera
- type: icontains-any
value: [mechanism, computer, gears, astronomical]
- vars:
passage: |
Edsger Dijkstra argued that programs should be derived from their specifications through a
chain of small, verifiable steps. He took particular issue with the unrestricted use of GOTO,
which he believed encouraged jumping around in code in ways that made formal reasoning about
program correctness much harder than it needed to be.
assert:
- type: icontains-any
value: [Dijkstra, GOTO, correctness, specification]