code: def test_s3_cache_acompletion_stream_azure():
      import asyncio
  
      try:
          litellm.set_verbose = True
          random_word = generate_random_word()
          messages = [
              {
                  "role": "user",
                  "content": f"write a one sentence poem about: {random_word}",
              }
          ]
          litellm.cache = Cache(
              type="s3",
              s3_bucket_name="cache-bucket-litellm",
              s3_region_name="us-west-2",
          )
          print("s3 Cache: test for caching, streaming + completion")
          response_1_content = ""
          response_2_content = ""
  
          response_1_created = ""
          response_2_created = ""
  
          async def call1():
              nonlocal response_1_content, response_1_created
              response1 = await litellm.acompletion(
                  model="azure/chatgpt-v-2",
                  messages=messages,
                  max_tokens=40,
                  temperature=1,
                  stream=True,
              )
              async for chunk in response1:
                  print(chunk)
                  response_1_created = chunk.created
                  response_1_content += (
                      chunk.choices[0].delta.content or ""
                  )
              print(response_1_content)
  
          asyncio.run(call1())
          time.sleep(0.5)
          print("\n\n Response 1 content: ", response_1_content, "\n\n")
  
          async def call2():
              nonlocal response_2_content, response_2_created
              response2 = await litellm.acompletion(
                  model="azure/chatgpt-v-2",
                  messages=messages,
                  max_tokens=40,
                  temperature=1,
                  stream=True,
              )
              async for chunk in response2:
                  print(chunk)
                  response_2_content += (
                      chunk.choices[0].delta.content or ""
                  )
                  response_2_created = chunk.created
              print(response_2_content)
  
          asyncio.run(call2())
          print("\nresponse 1", response_1_content)
          print("\nresponse 2", response_2_content)
  
          assert (
              response_1_content == response_2_content
          ), f"Response 1 != Response 2. Same params, Response 1{response_1_content} != Response 2{response_2_content}"
  
          # prioritizing getting a new deploy out - will look at this in the next deploy
          # print("response 1 created", response_1_created)
          # print("response 2 created", response_2_created)
  
          # assert response_1_created == response_2_created
  
          litellm.cache = None
          litellm.success_callback = []
          litellm._async_success_callback = []
      except Exception as e:
          print(e)
          raise e
  
imports: import sys, os, uuid
  import time
  import traceback
  from dotenv import load_dotenv
  import os
  import pytest
  import litellm
  from litellm import embedding, completion
  from litellm.caching import Cache
  import random
  import hashlib
  import random
  import string
label_desc: Use image node_id 12 for calling a global function with example usage: test_s3_cache_acompletion_stream_azure() without return types