Skip to content

Latest commit

 

History

History
186 lines (172 loc) · 4.02 KB

File metadata and controls

186 lines (172 loc) · 4.02 KB

Results of GPT-3.5 on HumanEval/162

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

Prompt

Tokens: 102

def string_to_md5(text):
    """
    Given a string 'text', return its md5 hash equivalent string.
    If 'text' is an empty string, return None.

    >>> string_to_md5('Hello world') == '3e25960a79dbc69b674cd4ec67a72c62'
    """

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

Correct solution

def string_to_md5(text):
    """
    Given a string 'text', return its md5 hash equivalent string.
    If 'text' is an empty string, return None.

    >>> string_to_md5('Hello world') == '3e25960a79dbc69b674cd4ec67a72c62'
    """import hashlib
    return hashlib.md5(text.encode('ascii')).hexdigest() if text else None

Unit tests

def check(candidate):

    # Check some simple cases
    assert candidate('Hello world') == '3e25960a79dbc69b674cd4ec67a72c62'
    assert candidate('') == None
    assert candidate('A B C') == '0ef78513b0cb8cef12743f5aeb35f888'
    assert candidate('password') == '5f4dcc3b5aa765d61d8327deb882cf99'

    # Check some edge cases that are easy to work out by hand.
    assert True

Runs

✅ Run 1

Start time: 2023-07-18 17:01:18
Duration: 2.27s
Completion tokens: 32
Result: Pass

import hashlib

def string_to_md5(text):
    if text == "":
        return None
    else:
        return hashlib.md5(text.encode()).hexdigest()

✅ Run 2

Start time: 2023-07-18 17:01:17
Duration: 1.66s
Completion tokens: 32
Result: Pass

import hashlib

def string_to_md5(text):
    if text == '':
        return None
    else:
        return hashlib.md5(text.encode()).hexdigest()

✅ Run 3

Start time: 2023-07-18 17:01:14
Duration: 2.53s
Completion tokens: 32
Result: Pass

import hashlib

def string_to_md5(text):
    if text == "":
        return None
    else:
        return hashlib.md5(text.encode()).hexdigest()

✅ Run 4

Start time: 2023-07-18 17:01:12
Duration: 1.77s
Completion tokens: 32
Result: Pass

import hashlib

def string_to_md5(text):
    if text == "":
        return None
    else:
        return hashlib.md5(text.encode()).hexdigest()

✅ Run 5

Start time: 2023-07-18 17:01:09
Duration: 2.7s
Completion tokens: 54
Result: Pass

import hashlib

def string_to_md5(text):
    if text == "":
        return None
    else:
        md5_hash = hashlib.md5()
        md5_hash.update(text.encode('utf-8'))
        return md5_hash.hexdigest()

✅ Run 6

Start time: 2023-07-18 17:01:07
Duration: 2.68s
Completion tokens: 32
Result: Pass

import hashlib

def string_to_md5(text):
    if text == '':
        return None
    else:
        return hashlib.md5(text.encode()).hexdigest()

✅ Run 7

Start time: 2023-07-18 17:01:04
Duration: 2.15s
Completion tokens: 32
Result: Pass

import hashlib

def string_to_md5(text):
    if text == '':
        return None
    else:
        return hashlib.md5(text.encode()).hexdigest()

✅ Run 8

Start time: 2023-07-18 17:01:02
Duration: 2.35s
Completion tokens: 32
Result: Pass

import hashlib

def string_to_md5(text):
    if text == "":
        return None
    else:
        return hashlib.md5(text.encode()).hexdigest()

✅ Run 9

Start time: 2023-07-18 17:01:00
Duration: 1.91s
Completion tokens: 32
Result: Pass

import hashlib

def string_to_md5(text):
    if text == "":
        return None
    else:
        return hashlib.md5(text.encode()).hexdigest()

✅ Run 10

Start time: 2023-07-18 17:00:58
Duration: 1.88s
Completion tokens: 32
Result: Pass

import hashlib

def string_to_md5(text):
    if text == '':
        return None
    else:
        return hashlib.md5(text.encode()).hexdigest()