Skip to content

Commit

Permalink
when checking connections, let user know what we found
Browse files Browse the repository at this point in the history
  • Loading branch information
robch committed Oct 27, 2023
1 parent e594f75 commit 695a515
Show file tree
Hide file tree
Showing 3 changed files with 52 additions and 56 deletions.
72 changes: 23 additions & 49 deletions src/ai/.x/help/include.python.script.function_call_evaluate.py
Original file line number Diff line number Diff line change
Expand Up @@ -212,55 +212,29 @@ def run_evaluate_part(subscription_id, resource_group_name, project_name, run_re
def dont_call_this_method(kwargs):
raise Exception("This method should not be called.")

oldApi = False
if (oldApi):
from azure.ai.generative.evaluate import evaluate
eval_results = evaluate(
evaluation_name=name,
asset=dont_call_this_method,
data=run_results,
prediction_data="answer",
task_type="qa",
truth_data="truth",
metrics_config={
"openai_params": {
"api_version": os.getenv("OPENAI_API_VERSION"),
"api_base": os.getenv("OPENAI_API_BASE"),
"api_type": os.getenv("OPENAI_API_TYPE"),
"api_key": os.getenv("OPENAI_API_KEY"),
"deployment_id": os.getenv("AZURE_OPENAI_EVALUATION_DEPLOYMENT")
},
"questions": "question",
"contexts": "context",
"y_pred": "answer",
"y_test": "truth"
},
tracking_uri=client.tracking_uri,
)
else:
from azure.ai.generative.evaluate import evaluate
eval_results = evaluate(
evaluation_name=name,
target=dont_call_this_method,
data=run_results,
truth_data="truth",
prediction_data="answer",
task_type="qa",
data_mapping={
"questions": "question",
"contexts": "context",
"y_pred": "answer",
"y_test": "truth"
},
model_config={
"api_version": os.getenv("OPENAI_API_VERSION"),
"api_base": os.getenv("OPENAI_API_BASE"),
"api_type": os.getenv("OPENAI_API_TYPE"),
"api_key": os.getenv("OPENAI_API_KEY"),
"deployment_id": os.getenv("AZURE_OPENAI_EVALUATION_DEPLOYMENT")
},
tracking_uri=client.tracking_uri,
)
from azure.ai.generative.evaluate import evaluate
eval_results = evaluate(
evaluation_name=name,
target=dont_call_this_method,
data=run_results,
truth_data="truth",
prediction_data="answer",
task_type="qa",
data_mapping={
"questions": "question",
"contexts": "context",
"y_pred": "answer",
"y_test": "truth"
},
model_config={
"api_version": os.getenv("OPENAI_API_VERSION"),
"api_base": os.getenv("OPENAI_API_BASE"),
"api_type": os.getenv("OPENAI_API_TYPE"),
"api_key": os.getenv("OPENAI_API_KEY"),
"deployment_id": os.getenv("AZURE_OPENAI_EVALUATION_DEPLOYMENT")
},
tracking_uri=client.tracking_uri,
)

return eval_results

Expand Down
34 changes: 28 additions & 6 deletions src/common/details/ai_python_generative_sdk/AiSdkConsoleGui.cs
Original file line number Diff line number Diff line change
Expand Up @@ -259,9 +259,20 @@ public static void GetOrCreateAiHubProjectConnections(ICommandValues values, boo
? PythonSDKWrapper.CreateConnection(values, subscription, groupName, projectName, connectionName, connectionType, openAiEndpoint, openAiKey)
: PythonSDKWrapper.GetConnection(values, subscription, groupName, projectName, connectionName);

Console.WriteLine(createOpenAiConnection
? "\r*** CREATED *** "
: "\r*** CHECKED *** ");
var message = createSearchConnection ? "\r*** CREATED *** " : null;
if (checkForExistingOpenAiConnection)
{
var parsed = !string.IsNullOrEmpty(connectionJson) ? JToken.Parse(connectionJson) : null;
var connection = parsed?.Type == JTokenType.Object ? parsed?["connection"] : null;
var target = connection?.Type == JTokenType.Object ? connection?["target"]?.ToString() : null;
message = target == null
? $"\r*** WARNING: {connectionName} not connection found *** "
: target != openAiEndpoint
? $"\r*** WARNING: {connectionName} found but target is {target} *** "
: $"\r*** MATCHED: {connectionName} *** ";
}

Console.WriteLine(message);
connectionCount++;
}

Expand All @@ -279,9 +290,20 @@ public static void GetOrCreateAiHubProjectConnections(ICommandValues values, boo
? PythonSDKWrapper.CreateConnection(values, subscription, groupName, projectName, connectionName, connectionType, searchEndpoint, searchKey)
: PythonSDKWrapper.GetConnection(values, subscription, groupName, projectName, connectionName);

Console.WriteLine(createSearchConnection
? "\r*** CREATED *** "
: "\r*** CHECKED *** ");
var message = createSearchConnection ? "\r*** CREATED *** " : null;
if (checkForExistingSearchConnection)
{
var parsed = !string.IsNullOrEmpty(connectionJson) ? JToken.Parse(connectionJson) : null;
var connection = parsed?.Type == JTokenType.Object ? parsed?["connection"] : null;
var target = connection?.Type == JTokenType.Object ? connection?["target"]?.ToString() : null;
message = target == null
? $"\r*** WARNING: {connectionName} not connection found *** "
: target != searchEndpoint
? $"\r*** WARNING: {connectionName} found but target is {target} *** "
: $"\r*** MATCHED: {connectionName} *** ";
}

Console.WriteLine(message);
connectionCount++;
}
}
Expand Down
2 changes: 1 addition & 1 deletion src/common/details/helpers/config_set_helpers.cs
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ public class ConfigSetHelpers
{
public static void ConfigureProject(string subscriptionId, string groupName, string projectName)
{
ConsoleHelpers.WriteLineWithHighlight($"\n`AZURE AI PROJECT CONFIG`\n");
ConsoleHelpers.WriteLineWithHighlight($"\n`AZURE AI PROJECT CONFIG`");
Console.WriteLine();

int maxLabelWidth = 0;
Expand Down

0 comments on commit 695a515

Please sign in to comment.