Azure env vars can provide endpoint/token

This commit is contained in:
Cyber MacGeddon 2024-10-13 08:39:37 +01:00
parent 4ef8332c6f
commit e214a973da
3 changed files with 25 additions and 5 deletions

View file

@ -7,6 +7,7 @@ serverless endpoint service. Input is prompt, output is response.
import requests import requests
import json import json
from prometheus_client import Histogram from prometheus_client import Histogram
import os
from .... schema import TextCompletionRequest, TextCompletionResponse, Error from .... schema import TextCompletionRequest, TextCompletionResponse, Error
from .... schema import text_completion_request_queue from .... schema import text_completion_request_queue
@ -23,6 +24,8 @@ default_subscriber = module
default_temperature = 0.0 default_temperature = 0.0
default_max_output = 4192 default_max_output = 4192
default_model = "AzureAI" default_model = "AzureAI"
default_endpoint = os.getenv("AZURE_ENDPOINT")
default_token = os.getenv("AZURE_TOKEN")
class Processor(ConsumerProducer): class Processor(ConsumerProducer):
@ -31,12 +34,18 @@ class Processor(ConsumerProducer):
input_queue = params.get("input_queue", default_input_queue) input_queue = params.get("input_queue", default_input_queue)
output_queue = params.get("output_queue", default_output_queue) output_queue = params.get("output_queue", default_output_queue)
subscriber = params.get("subscriber", default_subscriber) subscriber = params.get("subscriber", default_subscriber)
endpoint = params.get("endpoint") endpoint = params.get("endpoint", default_endpoint)
token = params.get("token") token = params.get("token", default_token)
temperature = params.get("temperature", default_temperature) temperature = params.get("temperature", default_temperature)
max_output = params.get("max_output", default_max_output) max_output = params.get("max_output", default_max_output)
model = default_model model = default_model
if endpoint is None:
raise RuntimeError("Azure endpoint not specified")
if token is None:
raise RuntimeError("Azure token not specified")
super(Processor, self).__init__( super(Processor, self).__init__(
**params | { **params | {
"input_queue": input_queue, "input_queue": input_queue,

View file

@ -8,6 +8,7 @@ import requests
import json import json
from prometheus_client import Histogram from prometheus_client import Histogram
from openai import AzureOpenAI from openai import AzureOpenAI
import os
from .... schema import TextCompletionRequest, TextCompletionResponse, Error from .... schema import TextCompletionRequest, TextCompletionResponse, Error
from .... schema import text_completion_request_queue from .... schema import text_completion_request_queue
@ -24,6 +25,8 @@ default_subscriber = module
default_temperature = 0.0 default_temperature = 0.0
default_max_output = 4192 default_max_output = 4192
default_api = "2024-02-15-preview" default_api = "2024-02-15-preview"
default_endpoint = os.getenv("AZURE_ENDPOINT")
default_token = os.getenv("AZURE_TOKEN")
class Processor(ConsumerProducer): class Processor(ConsumerProducer):
@ -32,13 +35,19 @@ class Processor(ConsumerProducer):
input_queue = params.get("input_queue", default_input_queue) input_queue = params.get("input_queue", default_input_queue)
output_queue = params.get("output_queue", default_output_queue) output_queue = params.get("output_queue", default_output_queue)
subscriber = params.get("subscriber", default_subscriber) subscriber = params.get("subscriber", default_subscriber)
endpoint = params.get("endpoint") endpoint = params.get("endpoint", default_endpoint)
token = params.get("token") token = params.get("token", default_token)
temperature = params.get("temperature", default_temperature) temperature = params.get("temperature", default_temperature)
max_output = params.get("max_output", default_max_output) max_output = params.get("max_output", default_max_output)
model = params.get("model") model = params.get("model")
api = params.get("api_version", default_api) api = params.get("api_version", default_api)
if endpoint is None:
raise RuntimeError("Azure endpoint not specified")
if token is None:
raise RuntimeError("Azure token not specified")
super(Processor, self).__init__( super(Processor, self).__init__(
**params | { **params | {
"input_queue": input_queue, "input_queue": input_queue,

View file

@ -6,6 +6,7 @@ Input is prompt, output is response.
import anthropic import anthropic
from prometheus_client import Histogram from prometheus_client import Histogram
import os
from .... schema import TextCompletionRequest, TextCompletionResponse, Error from .... schema import TextCompletionRequest, TextCompletionResponse, Error
from .... schema import text_completion_request_queue from .... schema import text_completion_request_queue
@ -22,6 +23,7 @@ default_subscriber = module
default_model = 'claude-3-5-sonnet-20240620' default_model = 'claude-3-5-sonnet-20240620'
default_temperature = 0.0 default_temperature = 0.0
default_max_output = 8192 default_max_output = 8192
default_api_key = os.getenv("CLAUDE_KEY")
class Processor(ConsumerProducer): class Processor(ConsumerProducer):
@ -31,7 +33,7 @@ class Processor(ConsumerProducer):
output_queue = params.get("output_queue", default_output_queue) output_queue = params.get("output_queue", default_output_queue)
subscriber = params.get("subscriber", default_subscriber) subscriber = params.get("subscriber", default_subscriber)
model = params.get("model", default_model) model = params.get("model", default_model)
api_key = params.get("api_key") api_key = params.get("api_key", default_api_key)
temperature = params.get("temperature", default_temperature) temperature = params.get("temperature", default_temperature)
max_output = params.get("max_output", default_max_output) max_output = params.get("max_output", default_max_output)