Skip to content

Latest commit

 

History

History
249 lines (233 loc) · 6.59 KB

26.md

File metadata and controls

249 lines (233 loc) · 6.59 KB

Results of GPT-4 on HumanEval/26

Date: 18 July, 2023
Model: gpt-4
Temperature: 0.2
Passing runs: 10
Total runs: 10
Success rate: 100%

Prompt

Tokens: 110

from typing import List


def remove_duplicates(numbers: List[int]) -> List[int]:
    """ From a list of integers, remove all elements that occur more than once.
    Keep order of elements left the same as in the input.
    >>> remove_duplicates([1, 2, 3, 2, 4])
    [1, 3, 4]
    """

The above is an incomplete Python code fragment. Return the complete and correct code with no additional text.

Correct solution

from typing import List


def remove_duplicates(numbers: List[int]) -> List[int]:
    """ From a list of integers, remove all elements that occur more than once.
    Keep order of elements left the same as in the input.
    >>> remove_duplicates([1, 2, 3, 2, 4])
    [1, 3, 4]
    """import collections
    c = collections.Counter(numbers)
    return [n for n in numbers if c[n] <= 1]

Unit tests

METADATA = {
    'author': 'jt',
    'dataset': 'test'
}


def check(candidate):
    assert candidate([]) == []
    assert candidate([1, 2, 3, 4]) == [1, 2, 3, 4]
    assert candidate([1, 2, 3, 2, 4, 3, 5]) == [1, 4, 5]

Runs

✅ Run 1

Start time: 2023-07-18 18:47:46
Duration: 11.58s
Completion tokens: 111
Result: Pass

from typing import List

def remove_duplicates(numbers: List[int]) -> List[int]:
    """ From a list of integers, remove all elements that occur more than once.
    Keep order of elements left the same as in the input.
    >>> remove_duplicates([1, 2, 3, 2, 4])
    [1, 3, 4]
    """
    result = []
    for number in numbers:
        if numbers.count(number) == 1:
            result.append(number)
    return result

✅ Run 2

Start time: 2023-07-18 18:47:33
Duration: 12.99s
Completion tokens: 111
Result: Pass

from typing import List

def remove_duplicates(numbers: List[int]) -> List[int]:
    """ From a list of integers, remove all elements that occur more than once.
    Keep order of elements left the same as in the input.
    >>> remove_duplicates([1, 2, 3, 2, 4])
    [1, 3, 4]
    """
    result = []
    for number in numbers:
        if numbers.count(number) == 1:
            result.append(number)
    return result

✅ Run 3

Start time: 2023-07-18 18:47:23
Duration: 9.67s
Completion tokens: 111
Result: Pass

from typing import List

def remove_duplicates(numbers: List[int]) -> List[int]:
    """ From a list of integers, remove all elements that occur more than once.
    Keep order of elements left the same as in the input.
    >>> remove_duplicates([1, 2, 3, 2, 4])
    [1, 3, 4]
    """
    result = []
    for number in numbers:
        if numbers.count(number) == 1:
            result.append(number)
    return result

✅ Run 4

Start time: 2023-07-18 18:47:11
Duration: 11.92s
Completion tokens: 111
Result: Pass

from typing import List

def remove_duplicates(numbers: List[int]) -> List[int]:
    """ From a list of integers, remove all elements that occur more than once.
    Keep order of elements left the same as in the input.
    >>> remove_duplicates([1, 2, 3, 2, 4])
    [1, 3, 4]
    """
    result = []
    for number in numbers:
        if numbers.count(number) == 1:
            result.append(number)
    return result

✅ Run 5

Start time: 2023-07-18 18:47:03
Duration: 8.69s
Completion tokens: 111
Result: Pass

from typing import List

def remove_duplicates(numbers: List[int]) -> List[int]:
    """ From a list of integers, remove all elements that occur more than once.
    Keep order of elements left the same as in the input.
    >>> remove_duplicates([1, 2, 3, 2, 4])
    [1, 3, 4]
    """
    result = []
    for number in numbers:
        if numbers.count(number) == 1:
            result.append(number)
    return result

✅ Run 6

Start time: 2023-07-18 18:46:54
Duration: 9.06s
Completion tokens: 111
Result: Pass

from typing import List

def remove_duplicates(numbers: List[int]) -> List[int]:
    """ From a list of integers, remove all elements that occur more than once.
    Keep order of elements left the same as in the input.
    >>> remove_duplicates([1, 2, 3, 2, 4])
    [1, 3, 4]
    """
    result = []
    for number in numbers:
        if numbers.count(number) == 1:
            result.append(number)
    return result

✅ Run 7

Start time: 2023-07-18 18:46:42
Duration: 11.5s
Completion tokens: 111
Result: Pass

from typing import List

def remove_duplicates(numbers: List[int]) -> List[int]:
    """ From a list of integers, remove all elements that occur more than once.
    Keep order of elements left the same as in the input.
    >>> remove_duplicates([1, 2, 3, 2, 4])
    [1, 3, 4]
    """
    result = []
    for number in numbers:
        if numbers.count(number) == 1:
            result.append(number)
    return result

✅ Run 8

Start time: 2023-07-18 18:46:32
Duration: 9.82s
Completion tokens: 111
Result: Pass

from typing import List

def remove_duplicates(numbers: List[int]) -> List[int]:
    """ From a list of integers, remove all elements that occur more than once.
    Keep order of elements left the same as in the input.
    >>> remove_duplicates([1, 2, 3, 2, 4])
    [1, 3, 4]
    """
    result = []
    for number in numbers:
        if numbers.count(number) == 1:
            result.append(number)
    return result

✅ Run 9

Start time: 2023-07-18 18:46:23
Duration: 9.01s
Completion tokens: 111
Result: Pass

from typing import List

def remove_duplicates(numbers: List[int]) -> List[int]:
    """ From a list of integers, remove all elements that occur more than once.
    Keep order of elements left the same as in the input.
    >>> remove_duplicates([1, 2, 3, 2, 4])
    [1, 3, 4]
    """
    result = []
    for num in numbers:
        if numbers.count(num) == 1:
            result.append(num)
    return result

✅ Run 10

Start time: 2023-07-18 18:46:12
Duration: 11.21s
Completion tokens: 111
Result: Pass

from typing import List

def remove_duplicates(numbers: List[int]) -> List[int]:
    """ From a list of integers, remove all elements that occur more than once.
    Keep order of elements left the same as in the input.
    >>> remove_duplicates([1, 2, 3, 2, 4])
    [1, 3, 4]
    """
    result = []
    for number in numbers:
        if numbers.count(number) == 1:
            result.append(number)
    return result