Spaces:
Sleeping
Sleeping
Download sampling.py from Sarupa/AI_Confidence_Layer: direct link, hf CLI and curl.
- Browser
- Download file 1.03 kB
-
https://huggingface.co/spaces/Sarupa/AI_Confidence_Layer/resolve/main/sampling.py
- Command line
-
hf download hf://spaces/Sarupa/AI_Confidence_Layer/sampling.py
-
curl -L -o sampling.py https://huggingface.co/spaces/Sarupa/AI_Confidence_Layer/resolve/main/sampling.py
1.03 kB
| from model import call_llm | |
| from sentence_transformers.util import cos_sim | |
| from confidence import get_embedder | |
| def similarity(samples: list[str]) -> float: | |
| if len(samples) < 2: | |
| return 1.0 | |
| embedder = get_embedder() | |
| emb = embedder.encode(samples) | |
| sims = [] | |
| # Pairwise similarity | |
| for i in range(len(samples)): | |
| for j in range(i+1, len(samples)): | |
| sim = float(cos_sim(emb[i], emb[j])[0][0]) | |
| sims.append(sim) | |
| return sum(sims) / len(sims) if sims else 1.0 | |
| def generate_samples(prompt: str) -> list[str]: | |
| configs = [ | |
| {"temperature": 0.2, "top_p": 0.8}, | |
| {"temperature": 0.7, "top_p": 0.9} | |
| ] | |
| outputs = [] | |
| for cfg in configs: | |
| outputs.append(call_llm(prompt, **cfg)) | |
| # Adaptive expansion if low similarity | |
| if similarity(outputs) < 0.8: | |
| print("[DEBUG] Low similarity detected, generating 3rd adaptive sample") | |
| outputs.append(call_llm(prompt, temperature=1.2, top_p=1.0)) | |
| return outputs | |