File size: 24,230 Bytes
5ec11ba
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
{
  "nbformat": 4,
  "nbformat_minor": 0,
  "metadata": {
    "colab": {
      "provenance": []
    },
    "kernelspec": {
      "name": "python3",
      "display_name": "Python 3"
    },
    "language_info": {
      "name": "python"
    }
  },
  "cells": [
    {
      "cell_type": "markdown",
      "source": [
        "Voice-to-Text Conversion\n"
      ],
      "metadata": {
        "id": "x30KOWWv5xTH"
      }
    },
    {
      "cell_type": "code",
      "source": [
        "pip install openai-whisper\n"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "wGefMzpout1n",
        "outputId": "bdd951a8-946c-439f-b34c-579c01031746"
      },
      "execution_count": 2,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            "Collecting openai-whisper\n",
            "  Downloading openai-whisper-20231117.tar.gz (798 kB)\n",
            "\u001b[?25l     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m0.0/798.6 kB\u001b[0m \u001b[31m?\u001b[0m eta \u001b[36m-:--:--\u001b[0m\r\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m798.6/798.6 kB\u001b[0m \u001b[31m31.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
            "\u001b[?25h  Installing build dependencies ... \u001b[?25l\u001b[?25hdone\n",
            "  Getting requirements to build wheel ... \u001b[?25l\u001b[?25hdone\n",
            "  Preparing metadata (pyproject.toml) ... \u001b[?25l\u001b[?25hdone\n",
            "Requirement already satisfied: triton<3,>=2.0.0 in /usr/local/lib/python3.10/dist-packages (from openai-whisper) (2.3.1)\n",
            "Requirement already satisfied: numba in /usr/local/lib/python3.10/dist-packages (from openai-whisper) (0.60.0)\n",
            "Requirement already satisfied: numpy in /usr/local/lib/python3.10/dist-packages (from openai-whisper) (1.26.4)\n",
            "Requirement already satisfied: torch in /usr/local/lib/python3.10/dist-packages (from openai-whisper) (2.3.1+cu121)\n",
            "Requirement already satisfied: tqdm in /usr/local/lib/python3.10/dist-packages (from openai-whisper) (4.66.5)\n",
            "Requirement already satisfied: more-itertools in /usr/local/lib/python3.10/dist-packages (from openai-whisper) (10.3.0)\n",
            "Collecting tiktoken (from openai-whisper)\n",
            "  Downloading tiktoken-0.7.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (6.6 kB)\n",
            "Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from triton<3,>=2.0.0->openai-whisper) (3.15.4)\n",
            "Requirement already satisfied: llvmlite<0.44,>=0.43.0dev0 in /usr/local/lib/python3.10/dist-packages (from numba->openai-whisper) (0.43.0)\n",
            "Requirement already satisfied: regex>=2022.1.18 in /usr/local/lib/python3.10/dist-packages (from tiktoken->openai-whisper) (2024.5.15)\n",
            "Requirement already satisfied: requests>=2.26.0 in /usr/local/lib/python3.10/dist-packages (from tiktoken->openai-whisper) (2.32.3)\n",
            "Requirement already satisfied: typing-extensions>=4.8.0 in /usr/local/lib/python3.10/dist-packages (from torch->openai-whisper) (4.12.2)\n",
            "Requirement already satisfied: sympy in /usr/local/lib/python3.10/dist-packages (from torch->openai-whisper) (1.13.2)\n",
            "Requirement already satisfied: networkx in /usr/local/lib/python3.10/dist-packages (from torch->openai-whisper) (3.3)\n",
            "Requirement already satisfied: jinja2 in /usr/local/lib/python3.10/dist-packages (from torch->openai-whisper) (3.1.4)\n",
            "Requirement already satisfied: fsspec in /usr/local/lib/python3.10/dist-packages (from torch->openai-whisper) (2024.6.1)\n",
            "Collecting nvidia-cuda-nvrtc-cu12==12.1.105 (from torch->openai-whisper)\n",
            "  Using cached nvidia_cuda_nvrtc_cu12-12.1.105-py3-none-manylinux1_x86_64.whl.metadata (1.5 kB)\n",
            "Collecting nvidia-cuda-runtime-cu12==12.1.105 (from torch->openai-whisper)\n",
            "  Using cached nvidia_cuda_runtime_cu12-12.1.105-py3-none-manylinux1_x86_64.whl.metadata (1.5 kB)\n",
            "Collecting nvidia-cuda-cupti-cu12==12.1.105 (from torch->openai-whisper)\n",
            "  Using cached nvidia_cuda_cupti_cu12-12.1.105-py3-none-manylinux1_x86_64.whl.metadata (1.6 kB)\n",
            "Collecting nvidia-cudnn-cu12==8.9.2.26 (from torch->openai-whisper)\n",
            "  Using cached nvidia_cudnn_cu12-8.9.2.26-py3-none-manylinux1_x86_64.whl.metadata (1.6 kB)\n",
            "Collecting nvidia-cublas-cu12==12.1.3.1 (from torch->openai-whisper)\n",
            "  Using cached nvidia_cublas_cu12-12.1.3.1-py3-none-manylinux1_x86_64.whl.metadata (1.5 kB)\n",
            "Collecting nvidia-cufft-cu12==11.0.2.54 (from torch->openai-whisper)\n",
            "  Using cached nvidia_cufft_cu12-11.0.2.54-py3-none-manylinux1_x86_64.whl.metadata (1.5 kB)\n",
            "Collecting nvidia-curand-cu12==10.3.2.106 (from torch->openai-whisper)\n",
            "  Using cached nvidia_curand_cu12-10.3.2.106-py3-none-manylinux1_x86_64.whl.metadata (1.5 kB)\n",
            "Collecting nvidia-cusolver-cu12==11.4.5.107 (from torch->openai-whisper)\n",
            "  Using cached nvidia_cusolver_cu12-11.4.5.107-py3-none-manylinux1_x86_64.whl.metadata (1.6 kB)\n",
            "Collecting nvidia-cusparse-cu12==12.1.0.106 (from torch->openai-whisper)\n",
            "  Using cached nvidia_cusparse_cu12-12.1.0.106-py3-none-manylinux1_x86_64.whl.metadata (1.6 kB)\n",
            "Collecting nvidia-nccl-cu12==2.20.5 (from torch->openai-whisper)\n",
            "  Using cached nvidia_nccl_cu12-2.20.5-py3-none-manylinux2014_x86_64.whl.metadata (1.8 kB)\n",
            "Collecting nvidia-nvtx-cu12==12.1.105 (from torch->openai-whisper)\n",
            "  Using cached nvidia_nvtx_cu12-12.1.105-py3-none-manylinux1_x86_64.whl.metadata (1.7 kB)\n",
            "Collecting nvidia-nvjitlink-cu12 (from nvidia-cusolver-cu12==11.4.5.107->torch->openai-whisper)\n",
            "  Using cached nvidia_nvjitlink_cu12-12.6.20-py3-none-manylinux2014_x86_64.whl.metadata (1.5 kB)\n",
            "Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests>=2.26.0->tiktoken->openai-whisper) (3.3.2)\n",
            "Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests>=2.26.0->tiktoken->openai-whisper) (3.7)\n",
            "Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests>=2.26.0->tiktoken->openai-whisper) (2.0.7)\n",
            "Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests>=2.26.0->tiktoken->openai-whisper) (2024.7.4)\n",
            "Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.10/dist-packages (from jinja2->torch->openai-whisper) (2.1.5)\n",
            "Requirement already satisfied: mpmath<1.4,>=1.1.0 in /usr/local/lib/python3.10/dist-packages (from sympy->torch->openai-whisper) (1.3.0)\n",
            "Downloading tiktoken-0.7.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB)\n",
            "\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.1/1.1 MB\u001b[0m \u001b[31m51.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
            "\u001b[?25hUsing cached nvidia_cublas_cu12-12.1.3.1-py3-none-manylinux1_x86_64.whl (410.6 MB)\n",
            "Using cached nvidia_cuda_cupti_cu12-12.1.105-py3-none-manylinux1_x86_64.whl (14.1 MB)\n",
            "Using cached nvidia_cuda_nvrtc_cu12-12.1.105-py3-none-manylinux1_x86_64.whl (23.7 MB)\n",
            "Using cached nvidia_cuda_runtime_cu12-12.1.105-py3-none-manylinux1_x86_64.whl (823 kB)\n",
            "Using cached nvidia_cudnn_cu12-8.9.2.26-py3-none-manylinux1_x86_64.whl (731.7 MB)\n",
            "Using cached nvidia_cufft_cu12-11.0.2.54-py3-none-manylinux1_x86_64.whl (121.6 MB)\n",
            "Using cached nvidia_curand_cu12-10.3.2.106-py3-none-manylinux1_x86_64.whl (56.5 MB)\n",
            "Using cached nvidia_cusolver_cu12-11.4.5.107-py3-none-manylinux1_x86_64.whl (124.2 MB)\n",
            "Using cached nvidia_cusparse_cu12-12.1.0.106-py3-none-manylinux1_x86_64.whl (196.0 MB)\n",
            "Using cached nvidia_nccl_cu12-2.20.5-py3-none-manylinux2014_x86_64.whl (176.2 MB)\n",
            "Using cached nvidia_nvtx_cu12-12.1.105-py3-none-manylinux1_x86_64.whl (99 kB)\n",
            "Using cached nvidia_nvjitlink_cu12-12.6.20-py3-none-manylinux2014_x86_64.whl (19.7 MB)\n",
            "Building wheels for collected packages: openai-whisper\n",
            "  Building wheel for openai-whisper (pyproject.toml) ... \u001b[?25l\u001b[?25hdone\n",
            "  Created wheel for openai-whisper: filename=openai_whisper-20231117-py3-none-any.whl size=801360 sha256=2042f6e6cfe6d541a0c84d2bdea36429e23541c75199700607f0938ac107dfb1\n",
            "  Stored in directory: /root/.cache/pip/wheels/d0/85/e1/9361b4cbea7dd4b7f6702fa4c3afc94877952eeb2b62f45f56\n",
            "Successfully built openai-whisper\n",
            "Installing collected packages: nvidia-nvtx-cu12, nvidia-nvjitlink-cu12, nvidia-nccl-cu12, nvidia-curand-cu12, nvidia-cufft-cu12, nvidia-cuda-runtime-cu12, nvidia-cuda-nvrtc-cu12, nvidia-cuda-cupti-cu12, nvidia-cublas-cu12, tiktoken, nvidia-cusparse-cu12, nvidia-cudnn-cu12, nvidia-cusolver-cu12, openai-whisper\n",
            "Successfully installed nvidia-cublas-cu12-12.1.3.1 nvidia-cuda-cupti-cu12-12.1.105 nvidia-cuda-nvrtc-cu12-12.1.105 nvidia-cuda-runtime-cu12-12.1.105 nvidia-cudnn-cu12-8.9.2.26 nvidia-cufft-cu12-11.0.2.54 nvidia-curand-cu12-10.3.2.106 nvidia-cusolver-cu12-11.4.5.107 nvidia-cusparse-cu12-12.1.0.106 nvidia-nccl-cu12-2.20.5 nvidia-nvjitlink-cu12-12.6.20 nvidia-nvtx-cu12-12.1.105 openai-whisper-20231117 tiktoken-0.7.0\n"
          ]
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "import whisper\n",
        "import torchaudio\n",
        "# Load the pre-trained Whisper model\n",
        "model = whisper.load_model(\"base.en\")\n",
        "\n",
        "# Directly pass the file path to the transcribe function\n",
        "result = model.transcribe(\"/content/ielts-recent-actual-test-7-part-1.mp3\")\n",
        "\n",
        "# Extract and print the transcribed text\n",
        "text = result['text']\n",
        "print(text)\n"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "6Emr3W14z1aT",
        "outputId": "60127cf8-79de-43b4-fa19-fcce3b7a7ca3"
      },
      "execution_count": 8,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stderr",
          "text": [
            "/usr/local/lib/python3.10/dist-packages/whisper/__init__.py:146: FutureWarning: You are using `torch.load` with `weights_only=False` (the current default value), which uses the default pickle module implicitly. It is possible to construct malicious pickle data which will execute arbitrary code during unpickling (See https://github.com/pytorch/pytorch/blob/main/SECURITY.md#untrusted-models for more details). In a future release, the default value for `weights_only` will be flipped to `True`. This limits the functions that could be executed during unpickling. Arbitrary objects will no longer be allowed to be loaded via this mode unless they are explicitly allowlisted by the user via `torch.serialization.add_safe_globals`. We recommend you start setting `weights_only=True` for any use case where you don't have full control of the loaded file. Please open an issue on GitHub for any issues related to this experimental feature.\n",
            "  checkpoint = torch.load(fp, map_location=device)\n",
            "/usr/local/lib/python3.10/dist-packages/whisper/transcribe.py:115: UserWarning: FP16 is not supported on CPU; using FP32 instead\n",
            "  warnings.warn(\"FP16 is not supported on CPU; using FP32 instead\")\n"
          ]
        },
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            " Hello? Hi, good morning. This is Talia from Parrot Bay Travel Agency. Is Robert God out there? Yes, speaking. I'm so sorry that I made such an early phone call, and I'm calling to ask a few questions about your most recent vacation. Could I have five minutes of your time? Sure thing. Great, thanks. Now I see here that you visited Melbourne. Was this your first visit to Melbourne? No, I have actually been there twice before. I see. Now what would you say was your favourite part about Melbourne? Well, I did like seeing the exotic wildlife, and there are great sights to see, but I have to say I was most impressed by the amazing weather. Yeah, the weather there is amazing. Which of the sights listed as part of our official tour did you see? And of those, which was your favourite? First I saw the theatre, which was beautifully designed. It was not nearly as cool as the town hall though. The building is a huge part of Melbourne's history, definitely my favourite. I saw the aquarium too, but wasn't too impressed. I see. Yes, people often have great reviews of town hall. Now I would like to ask you about your dining experience. Did you enjoy the food there? Absolutely, I loved it. I'm glad to hear it. Could you tell me a little bit about what you most enjoyed about the food? Being such an international city, I loved the variety. I could find any type of food I wanted, whether I wanted seafood, burgers or anything else. You name it and they had it. Did you drive to Melbourne? No, I flew. I thought about going by train, but in the interest of time I decided to go by plane. Right, I see. And would you mind telling me whether you are under 20, between the ages of 20 and 40, or older than 40? It would be nice if I was still under 20. My vacation probably would have been quite different. Actually though, I just turned 41 last week. Oh, happy birthday. So did you treat yourself from life first class? No way. I would love to have a budget that high. I'm more in the mid-range income level. I wasn't always though. I spent much of my life in a low-income household. I see. That answers my next question then of income level. And what was the purpose of this visit? I had to go there on business a lot before and decided I would go there for tourism this time. I see. And what is your occupation? I am mainly a computer programmer. I also write for a travel magazine on the side, which is why I visited Melbourne before, but it's not my main source of income. I see. Wow, it sounds like you work a lot. Yes, I am very busy, which is exactly why I took a nice week-long vacation to Melbourne. I completely agree. Would you care to comment on your accommodation? My hotel was a good value. Staying in the city can get really expensive, so it was nice to find such a good price for the location and quality. I'm glad I didn't end up in some cheap motel in the middle of nowhere. I'm glad you didn't either. Well, thank you for taking part in our survey, and I'm glad you enjoyed your vacation. No problem, take care.\n"
          ]
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "# Directly pass the file path to the transcribe function\n",
        "result = model.transcribe(\"/content/20460806_johny-johny-yes-papa_by_mrvmusic_preview.mp3\")\n",
        "\n",
        "# Extract and print the transcribed text\n",
        "text = result['text']\n",
        "print(text)\n"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "PMtR1P9s03cr",
        "outputId": "ef8d8b46-aae8-451d-d6ea-d5d8519ed6dd"
      },
      "execution_count": 7,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stderr",
          "text": [
            "/usr/local/lib/python3.10/dist-packages/whisper/transcribe.py:115: UserWarning: FP16 is not supported on CPU; using FP32 instead\n",
            "  warnings.warn(\"FP16 is not supported on CPU; using FP32 instead\")\n"
          ]
        },
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            " Audio Jungle Johnny Johnny Yes, Papa Oh, you too Johnny Johnny Yes, Papa Eating sugar Oh, the drug Selling light Yes, Papa Open white Ha ha ha Oh, you too Oh, the drug Johnny Johnny Yes, Papa Eating candy Oh, the drug Selling light Yes, Papa Open white Ha ha ha Oh, you too Shrine Johnny Yes, Papa Eating cookies Selling light WP Testing light Yes, Papa Eating ice Eating ice cream Telling lies Open white Ha ha ha Ooh, no, no, no Audio jungle Yes, papa Audio jungle Audio jungle Yes, papa No, no, no No, papa Baa baa baa Baa baa Audio jungle Yes, papa Waa baa No, papa Baa baa baa Yes, papa Audio jungle No, papa Baa baa Audio jungle Yes, papa Audio jungle No, papa Baa baa Baa baa Audio jungle Audio jungle Audio jungle Audio jungle Audio jungle Audio jungle Audio jungle Audio jungle Audio jungle Audio jungle\n"
          ]
        }
      ]
    },
    {
      "cell_type": "code",
      "source": [
        "import torchaudio\n",
        "import torch\n",
        "import numpy as np\n",
        "\n",
        "# Step 1: Load the audio file\n",
        "audio, sample_rate = torchaudio.load(\"/content/ielts-recent-actual-test-7-part-1.mp3\")\n",
        "\n",
        "# Step 2: Resample to 16 kHz\n",
        "resample_transform = torchaudio.transforms.Resample(orig_freq=sample_rate, new_freq=16000)\n",
        "audio = resample_transform(audio)\n",
        "\n",
        "# Step 3: Convert to mono (if the audio has multiple channels)\n",
        "if audio.shape[0] > 1:\n",
        "    audio = torch.mean(audio, dim=0, keepdim=True)\n",
        "\n",
        "# Step 4: Apply Voice Activity Detection (VAD)\n",
        "vad = torchaudio.transforms.Vad(sample_rate=16000)\n",
        "audio_vad = vad(audio)\n",
        "\n",
        "# Step 5: Convert the audio tensor to a NumPy array for further processing\n",
        "audio_vad_np = audio_vad.numpy()\n",
        "\n",
        "# The preprocessed audio can now be used for transcription\n",
        "# For example, you can pass `audio_vad_np` to Whisper for transcription\n",
        "import whisper\n",
        "\n",
        "# Load the pre-trained Whisper model\n",
        "model = whisper.load_model(\"base.en\")\n",
        "\n",
        "# Iterate over the voice segments and transcribe each one\n",
        "transcribed_text = \"\"\n",
        "for segment in audio_vad_np:\n",
        "    result = model.transcribe(segment)  # Pass each segment to transcribe\n",
        "    transcribed_text += result['text'] + \" \"\n",
        "\n",
        "print(transcribed_text)\n"
      ],
      "metadata": {
        "colab": {
          "base_uri": "https://localhost:8080/"
        },
        "id": "x4fBV8io3BMo",
        "outputId": "28f19516-759d-4c71-e8d6-4fb5cd65518e"
      },
      "execution_count": 12,
      "outputs": [
        {
          "output_type": "stream",
          "name": "stderr",
          "text": [
            "/usr/local/lib/python3.10/dist-packages/whisper/__init__.py:146: FutureWarning: You are using `torch.load` with `weights_only=False` (the current default value), which uses the default pickle module implicitly. It is possible to construct malicious pickle data which will execute arbitrary code during unpickling (See https://github.com/pytorch/pytorch/blob/main/SECURITY.md#untrusted-models for more details). In a future release, the default value for `weights_only` will be flipped to `True`. This limits the functions that could be executed during unpickling. Arbitrary objects will no longer be allowed to be loaded via this mode unless they are explicitly allowlisted by the user via `torch.serialization.add_safe_globals`. We recommend you start setting `weights_only=True` for any use case where you don't have full control of the loaded file. Please open an issue on GitHub for any issues related to this experimental feature.\n",
            "  checkpoint = torch.load(fp, map_location=device)\n",
            "/usr/local/lib/python3.10/dist-packages/whisper/transcribe.py:115: UserWarning: FP16 is not supported on CPU; using FP32 instead\n",
            "  warnings.warn(\"FP16 is not supported on CPU; using FP32 instead\")\n"
          ]
        },
        {
          "output_type": "stream",
          "name": "stdout",
          "text": [
            " Hello? Hi, good morning. This is Talia from Parrot Bay Travel Agency. Is Robert God out there? Yes, speaking. I'm so sorry that I made such an early phone call, and I'm calling to ask a few questions about your most recent vacation. Could I have five minutes of your time? Sure thing. Great, thanks. Now, I see here that you visited Melbourne. Was this your first visit to Melbourne? No, I have actually been there twice before. I see. Now, what would you say was your favourite part about Melbourne? Well, I did like seeing the exotic wildlife, and there are great sights to see, but I have to say I was most impressed by the amazing weather. Yeah, the weather there is amazing. Which of the sights listed as part of our official tour did you see? And of those, which was your favourite? First, I saw the theatre, which was beautifully designed. It was not nearly as cool as the town hall, though. The building is a huge part of Melbourne's history. Definitely my favourite. I saw the Aquarium too, but wasn't too impressed. I see. Yes, people often have great reviews of town hall. Now, I would like to ask you about your dining experience. Did you enjoy the food there? Absolutely, I loved it. I'm glad to hear it. Could you tell me a little bit about what you most enjoyed about the food? Being such an international city, I loved the variety. I could find any type of food I wanted. Whether I wanted seafood, burgers or anything else. You name it and they had it. Did you drive to Melbourne? No, I flew. I thought about going by train, but in the interest of time, I decided to go by plane. Right, I see. And would you mind telling me whether you were under 20 between the ages of 20 and 40 or older than 40? It would be nice if I was still under 20. My vacation probably would have been quite different. Actually, though, I just turned 41 last week. Oh, happy birthday. So did you treat yourself from life-first class? No way. I would love to have a budget that high. I'm more in the mid-range income level. I wasn't always, though. I spent much of my life in a low income household. I see. That answers my next question, then, of income level. And what was the purpose of this visit? I had to go there on business a lot before and decided I would go there for tourism this time. I see. And what is your occupation? I am mainly a computer programmer. I also write for a travel magazine on the side, which is why I visited Melbourne before, but it's not my main source of income. I see. Wow, it sounds like you work a lot. Yes, I am very busy, which is exactly why I took a nice week-long vacation to Melbourne. I completely agree. Would you care to comment on your accommodation? My hotel was a good value. Staying in the city can get really expensive, so it was nice to find such a good price for the location and quality. I'm glad I didn't end up in some cheap motel in the middle of nowhere. I'm glad you didn't either. Well, thank you for taking part in our survey, and I'm glad you enjoyed your vacation. No problem. Take care. \n"
          ]
        }
      ]
    },
    {
      "cell_type": "markdown",
      "source": [
        "Text Input into LLM"
      ],
      "metadata": {
        "id": "1n6zKPgG54lB"
      }
    }
  ]
}