# 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]