Modèles
Configurez un endpoint compatible OpenAI ou Anthropic avec son URL de base et une clé API si nécessaire. Testez la connexion. Un serveur local doit fonctionner ; les outils distants peuvent transmettre des données séparément.
Prélevez un réservoir de 32 éléments au plus dans un flux fini de 1000 éléments au plus avec un générateur local initialisé par une graine.
from random import Random
def reservoir_sample(items, size, seed):
if type(size) is not int or not 0 <= size <= 32:
raise ValueError("size.range")
if type(seed) is not int or not 0 <= seed < 2**32:
raise ValueError("seed.range")
rng, sample, count = Random(seed), [], 0
for index, item in enumerate(items):
count = index + 1
if count > 1000:
raise ValueError("stream.limit")
if index < size:
sample.append(item)
elif size:
position = rng.randrange(count)
if position < size:
sample[position] = item
if size > count:
raise ValueError("stream.short")
return sampleConfigurez un endpoint compatible OpenAI ou Anthropic avec son URL de base et une clé API si nécessaire. Testez la connexion. Un serveur local doit fonctionner ; les outils distants peuvent transmettre des données séparément.
Répétez la graine pour vérifier la reproductibilité et rejetez un flux trop court, sans modifier les listes d’entrée.
Comparez le comportement observé au résultat attendu. Si une vérification échoue, cherchez la cause avant de poursuivre les modifications.
from random import Random
def reservoir_sample(items, size, seed):
if type(size) is not int or not 0 <= size <= 32:
raise ValueError("size.range")
if type(seed) is not int or not 0 <= seed < 2**32:
raise ValueError("seed.range")
rng, sample, count = Random(seed), [], 0
for index, item in enumerate(items):
count = index + 1
if count > 1000:
raise ValueError("stream.limit")
if index < size:
sample.append(item)
elif size:
position = rng.randrange(count)
if position < size:
sample[position] = item
if size > count:
raise ValueError("stream.short")
return sampleLe code aléatoire nécessite une trace de revue même quand les sorties varient. SampleThicket offre un espace de programmation avec IA sous Windows pour discuter ensemble du code d’échantillonnage et de ses hypothèses de reproductibilité. Ouvrez le dossier pertinent et décrivez le flux d’entrée, l’échantillon demandé et le traitement attendu des demandes invalides.
Pour une tâche d’échantillonnage par réservoir sur un flux fini, demandez au modèle connecté d’examiner la fourniture de la graine et l’évolution de l’échantillon à l’arrivée des éléments. Gardez un court flux connu pour suivre le traitement. Distinguez un exemple reproductible d’une affirmation plus large sur la qualité statistique ; une graine fixe aide à reproduire un chemin mais ne prouve pas l’absence de biais.
Examinez les limites de la demande avant d’accepter des modifications. Un échantillon plus grand que le flux et un flux dépassant la limite prise en charge exigent des résultats explicites. Vérifiez comment les appelants reçoivent ces échecs, puis exécutez des tests déterministes et toute évaluation statistique appropriée avec vos outils. Conservez la graine et la configuration pertinente lorsque vous consignez un résultat.
SampleThicket prend en charge les connexions aux points de terminaison compatibles OpenAI ou Anthropic. Un modèle d’IA sans censure disponible peut aider à l’inspection, selon son comportement et les limites du serveur. L’espace de travail aide à préparer et examiner un correctif ; les vérifications reproductibles du projet étayent le comportement à conserver.
Incluez la séquence d’entrée ou une source reproductible, la taille demandée, la graine et les détails pertinents d’exécution. Gardez l’exemple assez petit pour l’examiner si possible. Cela distingue une modification de code d’un changement de parcours aléatoire.
Non. Cela établit la répétabilité pour cette configuration et ce cas. Les propriétés statistiques demandent un raisonnement distinct et une évaluation adaptée. Demandez au modèle de distinguer ces affirmations au lieu de traiter un seul test déterministe comme preuve de qualité de distribution.
Précisez si elle doit échouer ou suivre une autre politique délibérée. Pour l’exemple de flux fini, examinez le rejet d’un flux trop court et son appelant. Évitez de renvoyer silencieusement moins d’éléments si le code consommateur suppose le nombre demandé garanti.
Elles peuvent définir la charge acceptée et le contrat d’échec. Demandez au modèle de les identifier avant de modifier la boucle ou le traitement d’entrée. Testez les limites pour qu’une refactorisation ne supprime pas accidentellement une protection délibérée.
SampleThicket · Mis à jour 2026-10-25