import librosa from pathlib import Path, PurePath import soundfile as sf def serialize(messages): """ Converts a list of tuples where each element of the list represents a message to dictionary of messages """ serialized_messages = [] for message in messages: serialized_message = [ {"role": "system", "content": message[0]}, {"role": "user", "content": message[1]}, ] serialized_messages.extend(serialized_message) return serialized_messages def compress(audio_file): y, s = librosa.load(audio_file, sr=8000) # Downsample 44.1kHz to 8kHz sf.write(audio_file, y, s, "PCM_24") return audio_file