Spaces:
Runtime error
Runtime error
| from typing import List | |
| import gradio as gr | |
| from angle_emb import AnglE | |
| from scipy import spatial | |
| def cosine_similarity(vec1: List[int], vec2: List[int]): | |
| """ Calculate cosine similarity between two vectors. | |
| :param vec1: a list of integers | |
| :param vec2: a list of integers | |
| :return: a float value between 0 and 1, indicating the similarity between the two vectors. | |
| """ | |
| return 1 - spatial.distance.cosine(vec1, vec2) | |
| uae = AnglE.from_pretrained('WhereIsAI/UAE-Large-V1').to('cpu') | |
| uae_code = AnglE.from_pretrained('WhereIsAI/UAE-Code-Large-V1').to('cpu') | |
| def code_similarity(code1, code2, model): | |
| if model == "UAE-Code-Large-V1": | |
| v1 = uae_code.encode(code1) | |
| v2 = uae_code.encode(code2) | |
| else: | |
| v1 = uae.encode(code1) | |
| v2 = uae.encode(code2) | |
| return cosine_similarity(v1[0], v2[0]) | |
| demo = gr.Interface( | |
| code_similarity, | |
| [ | |
| gr.Textbox(label='code 1'), | |
| gr.Textbox(label='code 2'), | |
| gr.Radio(["UAE-Code-Large-V1", "UAE-Large-V1"], label="model", value="UAE-Code-Large-V1"), | |
| ], | |
| "text", | |
| examples=[ | |
| # sample 1 | |
| ["""# Approach 2: Quicksort using list comprehension | |
| def quicksort(arr): | |
| if len(arr) <= 1: | |
| return arr | |
| else: | |
| pivot = arr[0] | |
| left = [x for x in arr[1:] if x < pivot] | |
| right = [x for x in arr[1:] if x >= pivot] | |
| return quicksort(left) + [pivot] + quicksort(right) | |
| # Example usage | |
| arr = [1, 7, 4, 1, 10, 9, -2] | |
| sorted_arr = quicksort(arr) | |
| print("Sorted Array in Ascending Order:") | |
| print(sorted_arr)""", """def quick_sort(arr): | |
| if len(arr) <= 1: | |
| return arr | |
| else: | |
| return qsort([x for x in arr[1:] if x < arr[0]]) | |
| + [arr[0]] | |
| + qsort([x for x in arr[1:] if x >= arr[0]])""", """UAE-Code-Large-V1""" | |
| ], | |
| # sample 2 | |
| ["""def bubblesort(elements): | |
| # Looping from size of array from last index[-1] to index [0] | |
| for n in range(len(elements)-1, 0, -1): | |
| swapped = False | |
| for i in range(n): | |
| if elements[i] > elements[i + 1]: | |
| swapped = True | |
| # swapping data if the element is less than next element in the array | |
| elements[i], elements[i + 1] = elements[i + 1], elements[i] | |
| if not swapped: | |
| # exiting the function if we didn't make a single swap | |
| # meaning that the array is already sorted. | |
| return | |
| elements = [39, 12, 18, 85, 72, 10, 2, 18] | |
| print("Unsorted list is,") | |
| print(elements) | |
| bubblesort(elements) | |
| print("Sorted Array is, ") | |
| print(elements)""", """def quick_sort(arr): | |
| if len(arr) <= 1: | |
| return arr | |
| else: | |
| return qsort([x for x in arr[1:] if x < arr[0]]) | |
| + [arr[0]] | |
| + qsort([x for x in arr[1:] if x >= arr[0]])""", """UAE-Code-Large-V1""" | |
| ], | |
| ] | |
| ) | |
| if __name__ == "__main__": | |
| demo.launch() | |