|
10 | 10 |
|
11 | 11 | from loguru import logger |
12 | 12 | from typing import TYPE_CHECKING |
13 | | -from vllm.entrypoints.openai.protocol import ChatCompletionRequest |
14 | 13 | from openai.types.chat.chat_completion import ChatCompletion |
15 | | -from ajet.tuner_lib.experimental.as_oai_model_server import InterchangeCompletionRequest, API_KEY_PREFIX |
| 14 | +from ajet.tuner_lib.experimental.as_oai_model_server import InterchangeCompletionRequest |
16 | 15 | from ajet.utils.thread_executors import SharedInferenceTrackerThreadExecutor, SharedInterchangeThreadExecutor |
17 | 16 | from ajet.tuner_lib.experimental.interchange_utils import get_zmq_socket |
18 | | -from ajet.tuner_lib.experimental.interchange_utils import DEBUG |
| 17 | +from ajet.tuner_lib.experimental.interchange_utils import DEBUG, API_KEY_PREFIX |
| 18 | + |
| 19 | +if TYPE_CHECKING: |
| 20 | + from vllm.entrypoints.openai.protocol import ChatCompletionRequest |
19 | 21 |
|
20 | 22 | context = zmq.Context() |
21 | 23 | atexit.register(context.term) |
|
24 | 26 | from ajet.context_tracker.multiagent_tracking import MultiAgentContextTracker |
25 | 27 |
|
26 | 28 |
|
27 | | -def generate_auth_token(agent_name, target_tag, episode_uuid, episode_address): |
28 | | - """ |
29 | | - Generate a Base64-encoded auth_token from the given agent_name, target_tag, and episode_uuid. |
30 | | -
|
31 | | - Args: |
32 | | - agent_name (str): The name of the agent. |
33 | | - target_tag (str): The target tag. |
34 | | - episode_uuid (str): The UUID of the episode. |
35 | | -
|
36 | | - Returns: |
37 | | - str: The generated auth_token in the format "Bearer <base64_encoded_string>". |
38 | | - """ |
39 | | - # Step 1: Construct the auth_data dictionary |
40 | | - auth_data = { |
41 | | - "agent_name": agent_name, |
42 | | - "target_tag": target_tag, |
43 | | - "episode_uuid": episode_uuid, |
44 | | - "episode_address": episode_address, |
45 | | - } |
46 | | - |
47 | | - # Step 2: Convert the dictionary to a JSON string |
48 | | - json_string = json.dumps(auth_data) |
49 | | - |
50 | | - # Step 3: Encode the JSON string into Base64 |
51 | | - base64_encoded = base64.b64encode(json_string.encode('utf-8')).decode('utf-8') |
52 | | - |
53 | | - # Step 4: Prepend "Bearer " to the Base64-encoded string |
54 | | - auth_token = f"{API_KEY_PREFIX}{base64_encoded}" # API_KEY_PREFIX: Literal['sk-ajet-'] |
55 | | - |
56 | | - return auth_token |
57 | | - |
58 | | - |
59 | 29 | class InterchangeClient: |
60 | 30 | """ InterchangeClient is re-created in each episode |
61 | 31 | """ |
|
0 commit comments