File size: 1,030 Bytes
af2a153
 
63c4985
af2a153
 
 
63c4985
 
 
 
af2a153
 
 
 
63c4985
 
af2a153
 
 
 
63c4985
af2a153
 
63c4985
af2a153
 
 
 
 
 
 
 
 
 
63c4985
af2a153
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
from typing import List, Tuple
from .cot import generate_answer
from .utils import get_answer

def sample_cot(
        question: str,
        model_id: str="llama3-8b-8192",
        temperature: float=0.5,
        max_tokens: int=200,
        exampler: List[Tuple[str, str]]=None
        ):
    """
    to be written
    """
    reasoning, last_line = generate_answer(question, model_id, temperature, max_tokens, "cot",exampler)
    return reasoning, last_line
    

def self_consistent_answer(
        question:str,
        model_id:str="llama3-8b-8192",
        temperature:float=0.5,
        max_tokens:int=200, 
        exampler:List[Tuple[str, str]]=None, 
        num_samples:int=3
        ):
    """
    to be written
    """

    reasoning_paths = []
    results = []

    for _ in range(num_samples):
        reasoning, last_line = sample_cot(question, model_id, temperature, max_tokens ,exampler)
        reasoning_paths.append(reasoning)

        results.append(last_line)
    
    return reasoning_paths, results