Java: Convert PromptTemplateConfig and ChatMessageContent to immutable (#5067)

### Motivation and Context

<!-- Thank you for your contribution to the semantic-kernel repo!
Please help reviewers and future users, providing the following
information:
  1. Why is this change required?
  2. What problem does it solve?
  3. What scenario does it contribute to?
  4. If it fixes an open issue, please link to the issue here.
-->

### Description

<!-- Describe your changes, the overall approach, the underlying design.
These notes will help understanding how your code works. Thanks! -->

### Contribution Checklist

<!-- Before submitting this PR, please make sure: -->

- [ ] The code builds clean without any errors or warnings
- [ ] The PR follows the [SK Contribution
Guidelines](https://github.com/microsoft/semantic-kernel/blob/main/CONTRIBUTING.md)
and the [pre-submission formatting
script](https://github.com/microsoft/semantic-kernel/blob/main/CONTRIBUTING.md#development-scripts)
raises no violations
- [ ] All unit tests pass, and I have added new tests where possible
- [ ] I didn't break anyone 😄

---------

Co-authored-by: GitHub <[email protected]>
This commit is contained in:
John Oliver
2024-02-22 13:35:25 +00:00
committed by GitHub
co-authored by GitHub
parent e5bb1f3a50
commit f5cca08b91
202 changed files with 3551 additions and 2707 deletions
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.aiservices.openai;
import com.azure.core.http.HttpHeaderName;
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.aiservices.openai.chatcompletion;
import com.azure.ai.openai.OpenAIAsyncClient;
@@ -110,7 +111,7 @@ public class OpenAIChatCompletion implements ChatCompletionService {
if (kernel != null) {
kernel.getPlugins()
.forEach(plugin -> plugin.getFunctions().forEach((name, function) -> functions
.add(new OpenAIFunction(function.getMetadata(), plugin.getName()))));
.add(OpenAIFunction.build(function.getMetadata(), plugin.getName()))));
}
// Create copy to avoid reactor exceptions when updating request messages internally
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.aiservices.openai.chatcompletion;
import java.util.List;
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.aiservices.openai.chatcompletion;
import com.azure.ai.openai.models.FunctionDefinition;
@@ -9,20 +10,32 @@ import com.fasterxml.jackson.databind.ObjectMapper;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionMetadata;
import com.microsoft.semantickernel.semanticfunctions.KernelParameterMetadata;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
class OpenAIFunction {
private final String pluginName;
private final String name;
private final FunctionDefinition functionDefinition;
public OpenAIFunction(KernelFunctionMetadata<?> metadata, String pluginName) {
this.name = metadata.getName();
protected OpenAIFunction(
@Nonnull String name,
@Nonnull String pluginName,
@Nonnull FunctionDefinition functionDefinition) {
this.name = name;
this.pluginName = pluginName;
this.functionDefinition = toFunctionDefinition(metadata, pluginName);
this.functionDefinition = functionDefinition;
}
public static OpenAIFunction build(KernelFunctionMetadata<?> metadata, String pluginName) {
String name = metadata.getName();
FunctionDefinition functionDefinition = toFunctionDefinition(metadata, pluginName);
return new OpenAIFunction(name, pluginName, functionDefinition);
}
public String getName() {
@@ -38,7 +51,8 @@ class OpenAIFunction {
}
/**
* Gets the separator used between the plugin name and the function name, if a plugin name is present.
* Gets the separator used between the plugin name and the function name, if a plugin name is
* present.
*
* @return The separator used between the plugin name and the function name.
*/
@@ -58,7 +72,8 @@ class OpenAIFunction {
}
/**
* Converts a KernelFunctionMetadata representation to the SDK's FunctionDefinition representation.
* Converts a KernelFunctionMetadata representation to the SDK's FunctionDefinition
* representation.
*
* @return A FunctionDefinition containing all the function information.
*/
@@ -97,6 +112,7 @@ class OpenAIFunction {
}
private static class OpenAIFunctionParameter {
@JsonProperty("type")
private String type;
@JsonProperty("required")
@@ -104,17 +120,32 @@ class OpenAIFunction {
@JsonProperty("properties")
private Map<String, JsonNode> properties;
public OpenAIFunctionParameter(String type, List<String> required,
public OpenAIFunctionParameter(
String type,
List<String> required,
Map<String, JsonNode> properties) {
this.type = type;
this.required = required;
this.properties = properties;
this.required = Collections.unmodifiableList(required);
this.properties = Collections.unmodifiableMap(properties);
}
public String getType() {
return type;
}
public List<String> getRequired() {
return required;
}
public Map<String, JsonNode> getProperties() {
return properties;
}
}
private static String getSchemaForFunctionParameter(@Nullable String description) {
if (description == null)
if (description == null) {
return "{\"type\":\"string\"}";
}
return String.format("{\"type\":\"string\", \"description\":\"%s\"}", description);
}
}
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.aiservices.openai.chatcompletion;
import com.azure.ai.openai.models.ChatRequestMessage;
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.aiservices.openai.chatcompletion;
import com.azure.ai.openai.models.ChatRequestMessage;
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.aiservices.openai.textcompletion;
import com.azure.ai.openai.OpenAIAsyncClient;
+2 -1
View File
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
@@ -1,45 +0,0 @@
package com.microsoft.semantickernel.syntaxexamples;
import com.github.tomakehurst.wiremock.client.WireMock;
import com.github.tomakehurst.wiremock.matching.RegexPattern;
import com.github.tomakehurst.wiremock.matching.UrlPathPattern;
public class WireMockUtil {
public static void mockCompletionResponse(
String regexMatcher,
String response) {
String body = """
{
"id": "1",
"object": "text_completion",
"created": 1589478378,
"model": "text-davinci-003",
"system_fingerprint": "fp_44709d6fb",
"choices": [
{
"text": "%s",
"index": 0,
"logprobs": null,
"finish_reason": "length"
}
],
"usage": {
"prompt_tokens": 1,
"completion_tokens": 2,
"total_tokens": 3
}
}
"""
.formatted(response);
WireMock.reset();
WireMock.stubFor(WireMock
.post(new UrlPathPattern(
new RegexPattern("/openai/deployments/text-davinci-003/completions"), true))
.withRequestBody(WireMock.matching(".*" + regexMatcher + ".*"))
.willReturn(WireMock.ok()
.withBody(body)));
}
}
@@ -1,6 +1,5 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.syntaxexamples;
package com.microsoft.semantickernel.tests;
import com.microsoft.semantickernel.plugins.text.TextPlugin;
import org.junit.jupiter.api.Assertions;
@@ -1,12 +1,12 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.syntaxexamples;
package com.microsoft.semantickernel.tests;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.orchestration.FunctionResult;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.plugin.KernelPlugin;
import com.microsoft.semantickernel.plugin.KernelPluginFactory;
import com.microsoft.semantickernel.samples.syntaxexamples.Example03_Arguments.StaticTextPlugin;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
@@ -1,5 +1,5 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.syntaxexamples;
package com.microsoft.semantickernel.tests;
import com.azure.ai.openai.OpenAIAsyncClient;
import com.azure.ai.openai.OpenAIClientBuilder;
@@ -7,9 +7,9 @@ import com.github.tomakehurst.wiremock.junit5.WireMockRuntimeInfo;
import com.github.tomakehurst.wiremock.junit5.WireMockTest;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.orchestration.FunctionResult;
import com.microsoft.semantickernel.orchestration.PromptExecutionSettings;
import com.microsoft.semantickernel.semanticfunctions.KernelFunction;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.orchestration.PromptExecutionSettings;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionFromPrompt;
import com.microsoft.semantickernel.services.textcompletion.TextGenerationService;
import java.time.Instant;
@@ -0,0 +1,103 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.tests;
import com.azure.ai.openai.OpenAIAsyncClient;
import com.azure.ai.openai.OpenAIClientBuilder;
import com.github.tomakehurst.wiremock.junit5.WireMockRuntimeInfo;
import com.github.tomakehurst.wiremock.junit5.WireMockTest;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.Kernel.Builder;
import com.microsoft.semantickernel.aiservices.openai.chatcompletion.OpenAIChatCompletion;
import com.microsoft.semantickernel.hooks.KernelHook.FunctionInvokedHook;
import com.microsoft.semantickernel.hooks.KernelHook.FunctionInvokingHook;
import com.microsoft.semantickernel.orchestration.PromptExecutionSettings;
import com.microsoft.semantickernel.semanticfunctions.KernelFunction;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionFromPrompt;
import com.microsoft.semantickernel.semanticfunctions.OutputVariable;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
import java.util.concurrent.atomic.AtomicBoolean;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
@WireMockTest
public class KernelHooksTest {
private static Builder getKernelBuilder(WireMockRuntimeInfo wmRuntimeInfo) {
final OpenAIAsyncClient client = new OpenAIClientBuilder()
.endpoint("http://localhost:" + wmRuntimeInfo.getHttpPort())
.buildAsyncClient();
ChatCompletionService openAIChatCompletion = OpenAIChatCompletion.builder()
.withModelId("text-davinci-003")
.withOpenAIAsyncClient(client)
.build();
return Kernel.builder()
.withAIService(ChatCompletionService.class, openAIChatCompletion);
}
@Test
public void getUsageAsync(WireMockRuntimeInfo wmRuntimeInfo) {
WireMockUtil.mockChatCompletionResponse("Write a random paragraph about", "a-response");
Kernel kernel = getKernelBuilder(wmRuntimeInfo).build();
System.out.println("\n======== Get Usage Data ========\n");
// Initialize prompt
String functionPrompt = "Write a random paragraph about: {{$input}}.";
KernelFunction<String> excuseFunction = KernelFunctionFromPrompt.<String>builder()
.withTemplate(functionPrompt)
.withName("Excuse")
.withDefaultExecutionSettings(PromptExecutionSettings
.builder()
.withMaxTokens(100)
.withTemperature(0.4)
.withTopP(1)
.build())
.withOutputVariable(new OutputVariable("result", "java.lang.String"))
.build();
AtomicBoolean preHookTriggered = new AtomicBoolean(false);
FunctionInvokingHook preHook = event -> {
preHookTriggered.set(true);
return event;
};
AtomicBoolean removedPreExecutionHandlerTriggered = new AtomicBoolean(false);
FunctionInvokingHook removedPreExecutionHandler = event -> {
removedPreExecutionHandlerTriggered.set(true);
return event;
};
AtomicBoolean postExecutionHandlerTriggered = new AtomicBoolean(false);
FunctionInvokedHook postExecutionHandler = event -> {
postExecutionHandlerTriggered.set(true);
return event;
};
kernel.getGlobalKernelHooks().addHook(preHook);
// Demonstrate pattern for removing a handler.
kernel.getGlobalKernelHooks().addHook("pre-invoke-removed", removedPreExecutionHandler);
kernel.getGlobalKernelHooks().removeHook("pre-invoke-removed");
kernel.getGlobalKernelHooks().addHook(postExecutionHandler);
kernel.invokeAsync(
excuseFunction)
.withArguments(
KernelFunctionArguments
.builder()
.withVariable("input", "I missed the F1 final race")
.build())
.block();
Assertions.assertTrue(preHookTriggered.get());
Assertions.assertFalse(removedPreExecutionHandlerTriggered.get());
Assertions.assertTrue(postExecutionHandlerTriggered.get());
}
}
@@ -0,0 +1,125 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.tests;
import com.github.tomakehurst.wiremock.client.WireMock;
import com.github.tomakehurst.wiremock.matching.RegexPattern;
import com.github.tomakehurst.wiremock.matching.UrlPathPattern;
public class WireMockUtil {
public static void mockCompletionResponse(
String regexMatcher,
String response) {
String body = """
{
"id": "1",
"object": "text_completion",
"created": 1589478378,
"model": "text-davinci-003",
"system_fingerprint": "fp_44709d6fb",
"choices": [
{
"text": "%s",
"index": 0,
"logprobs": null,
"finish_reason": "length"
}
],
"usage": {
"prompt_tokens": 1,
"completion_tokens": 2,
"total_tokens": 3
}
}
"""
.formatted(response);
WireMock.reset();
WireMock.stubFor(WireMock
.post(new UrlPathPattern(
new RegexPattern("/openai/deployments/text-davinci-003/completions"), true))
.withRequestBody(WireMock.matching(".*" + regexMatcher + ".*"))
.willReturn(WireMock.ok()
.withBody(body)));
}
public static void mockChatCompletionResponse(
String regexMatcher,
String response) {
String body = """
{
"choices" : [
{
"content_filter_results" : {
"hate" : {
"filtered" : false,
"severity" : "safe"
},
"self_harm" : {
"filtered" : false,
"severity" : "safe"
},
"sexual" : {
"filtered" : false,
"severity" : "safe"
},
"violence" : {
"filtered" : false,
"severity" : "safe"
}
},
"finish_reason" : "length",
"index" : 0,
"message" : {
"content" : "%s",
"role" : "assistant"
}
}
],
"created" : 1707253019,
"id" : "chatcmpl-xxx",
"model" : "gpt-35-turbo",
"object" : "chat.completion",
"prompt_filter_results" : [
{
"content_filter_results" : {
"hate" : {
"filtered" : false,
"severity" : "safe"
},
"self_harm" : {
"filtered" : false,
"severity" : "safe"
},
"sexual" : {
"filtered" : false,
"severity" : "safe"
},
"violence" : {
"filtered" : false,
"severity" : "safe"
}
},
"prompt_index" : 0
}
],
"usage" : {
"completion_tokens" : 256,
"prompt_tokens" : 69,
"total_tokens" : 325
}
}
"""
.formatted(response);
WireMock.reset();
WireMock.stubFor(WireMock
.post(new UrlPathPattern(
new RegexPattern("/openai/deployments/text-davinci-003/chat/completions"), true))
.withRequestBody(WireMock.matching(".*" + regexMatcher + ".*"))
.willReturn(WireMock.ok()
.withBody(body)));
}
}
@@ -1,4 +1,5 @@
package com.microsoft.semantickernel.syntaxexamples;
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.tests;
import com.github.tomakehurst.wiremock.WireMockServer;
import com.github.tomakehurst.wiremock.core.WireMockConfiguration;
@@ -1,4 +1,5 @@
package com.microsoft.semantickernel.syntaxexamples;
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.tests;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
@@ -6,7 +6,7 @@
</Console>
</Appenders>
<Loggers>
<Root level="info">
<Root level="warn">
<AppenderRef ref="Console"/>
</Root>
</Loggers>
@@ -1,23 +1,23 @@
{
"id" : "45379a29-d6d3-4613-a885-b30ccaaa6db0",
"insertionIndex" : 19,
"name" : "deployments_gpt-35-turbo-2_chat_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"messages\":[{\"role\":\"assistant\",\"content\":\"You are a librarian expert\"},{\"role\":\"user\",\"content\":\"Hi, I'm looking some suggestions\"},{\"role\":\"assistant\",\"content\":\"Of course! I'd be happy to help you with some suggestions. What are you looking for?\"},{\"role\":\"user\",\"content\":\"I love history and philosophy, I'd like to learn something new about Greece, any suggestion\"}],\"max_tokens\":256,\"temperature\":1.0,\"top_p\":1.0,\"logit_bias\":{\"39142\":-100,\"17422\":-100,\"35199\":-100,\"56185\":-100,\"2363\":-100,\"23763\":-100,\"35097\":-100,\"1160\":-100,\"47913\":-100,\"58162\":-100,\"1888\":-100,\"79761\":-100,\"3229\":-100,\"2536\":-100,\"12735\":-100,\"301\":-100,\"3446\":-100,\"2653\":-100,\"86831\":-100,\"56741\":-100,\"3773\":-100,\"6875\":-100,\"17649\":-100,\"5403\":-100},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"model\":\"gpt-35-turbo-2\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/gpt-35-turbo-2/chat/completions?api-version=2023-12-01-preview"
},
"response" : {
"body" : "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253019,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"length\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"52dbd293-192d-4e01-8b31-e364b11a089d\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":69,\"completion_tokens\":256,\"total_tokens\":325}}",
"headers" : {},
"status" : 200
},
"uuid" : "45379a29-d6d3-4613-a885-b30ccaaa6db0"
"id": "45379a29-d6d3-4613-a885-b30ccaaa6db0",
"insertionIndex": 19,
"name": "deployments_gpt-35-turbo-2_chat_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"messages\":[{\"role\":\"assistant\",\"content\":\"You are a librarian expert\"},{\"role\":\"user\",\"content\":\"Hi, I'm looking some suggestions\"},{\"role\":\"assistant\",\"content\":\"Of course! I'd be happy to help you with some suggestions. What are you looking for?\"},{\"role\":\"user\",\"content\":\"I love history and philosophy, I'd like to learn something new about Greece, any suggestion\"}],\"max_tokens\":256,\"temperature\":1.0,\"top_p\":1.0,\"logit_bias\":{\"39142\":-100,\"17422\":-100,\"35199\":-100,\"56185\":-100,\"2363\":-100,\"23763\":-100,\"35097\":-100,\"1160\":-100,\"47913\":-100,\"58162\":-100,\"1888\":-100,\"79761\":-100,\"3229\":-100,\"2536\":-100,\"12735\":-100,\"301\":-100,\"3446\":-100,\"2653\":-100,\"86831\":-100,\"56741\":-100,\"3773\":-100,\"6875\":-100,\"17649\":-100,\"5403\":-100},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"model\":\"gpt-35-turbo-2\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/gpt-35-turbo-2/chat/completions?api-version=2023-12-01-preview"
},
"response": {
"body": "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253019,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"length\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"52dbd293-192d-4e01-8b31-e364b11a089d\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":69,\"completion_tokens\":256,\"total_tokens\":325}}",
"headers": {},
"status": 200
},
"uuid": "45379a29-d6d3-4613-a885-b30ccaaa6db0"
}
@@ -1,23 +1,23 @@
{
"id" : "686c6f9b-7c66-41af-8b9b-86e44fcdb2b1",
"insertionIndex" : 20,
"name" : "deployments_gpt-35-turbo-2_chat_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"messages\":[{\"role\":\"assistant\",\"content\":\"You are a librarian expert\"},{\"role\":\"user\",\"content\":\"Hi, I'm looking some suggestions\"}],\"max_tokens\":256,\"temperature\":1.0,\"top_p\":1.0,\"logit_bias\":{\"39142\":-100,\"17422\":-100,\"35199\":-100,\"56185\":-100,\"2363\":-100,\"23763\":-100,\"35097\":-100,\"1160\":-100,\"47913\":-100,\"58162\":-100,\"1888\":-100,\"79761\":-100,\"3229\":-100,\"2536\":-100,\"12735\":-100,\"301\":-100,\"3446\":-100,\"2653\":-100,\"86831\":-100,\"56741\":-100,\"3773\":-100,\"6875\":-100,\"17649\":-100,\"5403\":-100},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"model\":\"gpt-35-turbo-2\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/gpt-35-turbo-2/chat/completions?api-version=2023-12-01-preview"
},
"response" : {
"body" : "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253018,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"0aaf065e-3032-4d24-8d5d-10fc6b4c7eaf\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":23,\"completion_tokens\":20,\"total_tokens\":43}}",
"headers" : {},
"status" : 200
},
"uuid" : "686c6f9b-7c66-41af-8b9b-86e44fcdb2b1"
"id": "686c6f9b-7c66-41af-8b9b-86e44fcdb2b1",
"insertionIndex": 20,
"name": "deployments_gpt-35-turbo-2_chat_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"messages\":[{\"role\":\"assistant\",\"content\":\"You are a librarian expert\"},{\"role\":\"user\",\"content\":\"Hi, I'm looking some suggestions\"}],\"max_tokens\":256,\"temperature\":1.0,\"top_p\":1.0,\"logit_bias\":{\"39142\":-100,\"17422\":-100,\"35199\":-100,\"56185\":-100,\"2363\":-100,\"23763\":-100,\"35097\":-100,\"1160\":-100,\"47913\":-100,\"58162\":-100,\"1888\":-100,\"79761\":-100,\"3229\":-100,\"2536\":-100,\"12735\":-100,\"301\":-100,\"3446\":-100,\"2653\":-100,\"86831\":-100,\"56741\":-100,\"3773\":-100,\"6875\":-100,\"17649\":-100,\"5403\":-100},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"model\":\"gpt-35-turbo-2\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/gpt-35-turbo-2/chat/completions?api-version=2023-12-01-preview"
},
"response": {
"body": "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253018,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"0aaf065e-3032-4d24-8d5d-10fc6b4c7eaf\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":23,\"completion_tokens\":20,\"total_tokens\":43}}",
"headers": {},
"status": 200
},
"uuid": "686c6f9b-7c66-41af-8b9b-86e44fcdb2b1"
}
@@ -1,25 +1,25 @@
{
"id" : "71b07779-49a8-44e5-a60b-ee5b0a3ad697",
"insertionIndex" : 7,
"name" : "deployments_gpt-35-turbo-2_chat_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"messages\":[{\"role\":\"user\",\"content\":\"Hello AI, what can you do for me?\"}],\"model\":\"gpt-35-turbo-2\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/gpt-35-turbo-2/chat/completions?api-version=2023-12-01-preview"
},
"requiredScenarioState" : "scenario-4-deployments-gpt-35-turbo-2-chat-completions-2",
"response" : {
"body" : "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253061,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"1979b4ce-5463-4cfb-8ec8-1d05c4b44ccf\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":17,\"completion_tokens\":67,\"total_tokens\":84}}",
"headers" : {},
"status" : 200
},
"scenarioName" : "scenario-4-deployments-gpt-35-turbo-2-chat-completions",
"uuid" : "71b07779-49a8-44e5-a60b-ee5b0a3ad697"
"id": "71b07779-49a8-44e5-a60b-ee5b0a3ad697",
"insertionIndex": 7,
"name": "deployments_gpt-35-turbo-2_chat_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"messages\":[{\"role\":\"user\",\"content\":\"Hello AI, what can you do for me?\"}],\"model\":\"gpt-35-turbo-2\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/gpt-35-turbo-2/chat/completions?api-version=2023-12-01-preview"
},
"requiredScenarioState": "scenario-4-deployments-gpt-35-turbo-2-chat-completions-2",
"response": {
"body": "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253061,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"1979b4ce-5463-4cfb-8ec8-1d05c4b44ccf\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":17,\"completion_tokens\":67,\"total_tokens\":84}}",
"headers": {},
"status": 200
},
"scenarioName": "scenario-4-deployments-gpt-35-turbo-2-chat-completions",
"uuid": "71b07779-49a8-44e5-a60b-ee5b0a3ad697"
}
@@ -1,26 +1,26 @@
{
"id" : "c9edbe4a-e60b-4796-bd01-11bafa211bab",
"insertionIndex" : 8,
"name" : "deployments_gpt-35-turbo-2_chat_completions",
"newScenarioState" : "scenario-4-deployments-gpt-35-turbo-2-chat-completions-2",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"messages\":[{\"role\":\"user\",\"content\":\"Hello AI, what can you do for me?\"}],\"model\":\"gpt-35-turbo-2\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/gpt-35-turbo-2/chat/completions?api-version=2023-12-01-preview"
},
"requiredScenarioState" : "Started",
"response" : {
"body" : "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253054,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"28eee7e9-28c5-47c7-90c5-44cef75fd582\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":17,\"completion_tokens\":297,\"total_tokens\":314}}",
"headers" : {},
"status" : 200
},
"scenarioName" : "scenario-4-deployments-gpt-35-turbo-2-chat-completions",
"uuid" : "c9edbe4a-e60b-4796-bd01-11bafa211bab"
"id": "c9edbe4a-e60b-4796-bd01-11bafa211bab",
"insertionIndex": 8,
"name": "deployments_gpt-35-turbo-2_chat_completions",
"newScenarioState": "scenario-4-deployments-gpt-35-turbo-2-chat-completions-2",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"messages\":[{\"role\":\"user\",\"content\":\"Hello AI, what can you do for me?\"}],\"model\":\"gpt-35-turbo-2\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/gpt-35-turbo-2/chat/completions?api-version=2023-12-01-preview"
},
"requiredScenarioState": "Started",
"response": {
"body": "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253054,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"28eee7e9-28c5-47c7-90c5-44cef75fd582\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":17,\"completion_tokens\":297,\"total_tokens\":314}}",
"headers": {},
"status": 200
},
"scenarioName": "scenario-4-deployments-gpt-35-turbo-2-chat-completions",
"uuid": "c9edbe4a-e60b-4796-bd01-11bafa211bab"
}
@@ -1,23 +1,23 @@
{
"id" : "093a64da-80ba-49bf-a4fd-625224d60b3a",
"insertionIndex" : 25,
"name" : "deployments_gpt-35-turbo_chat_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"messages\":[{\"role\":\"user\",\"content\":\"List the two planets closest to 'Jupiter', excluding moons, using bullet points.\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"response" : {
"body" : "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253000,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"120318d5-35af-487a-b335-7fa00c5f7dd7\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":24,\"completion_tokens\":5,\"total_tokens\":29}}",
"headers" : {},
"status" : 200
},
"uuid" : "093a64da-80ba-49bf-a4fd-625224d60b3a"
"id": "093a64da-80ba-49bf-a4fd-625224d60b3a",
"insertionIndex": 25,
"name": "deployments_gpt-35-turbo_chat_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"messages\":[{\"role\":\"user\",\"content\":\"List the two planets closest to 'Jupiter', excluding moons, using bullet points.\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"response": {
"body": "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253000,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"120318d5-35af-487a-b335-7fa00c5f7dd7\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":24,\"completion_tokens\":5,\"total_tokens\":29}}",
"headers": {},
"status": 200
},
"uuid": "093a64da-80ba-49bf-a4fd-625224d60b3a"
}
@@ -1,23 +1,23 @@
{
"id" : "0c8046c5-74ad-4836-8aa9-09da60f367a2",
"insertionIndex" : 12,
"name" : "deployments_gpt-35-turbo_chat_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"messages\":[{\"role\":\"user\",\"content\":\"Write a paragraph about hats\"},{\"role\":\"system\",\"content\":\"Use upper case text when responding to the prompt.\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"response" : {
"body" : "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253039,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"ac9817bc-7e1a-48e4-b06c-0ff7618b88c6\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":26,\"completion_tokens\":131,\"total_tokens\":157}}",
"headers" : {},
"status" : 200
},
"uuid" : "0c8046c5-74ad-4836-8aa9-09da60f367a2"
"id": "0c8046c5-74ad-4836-8aa9-09da60f367a2",
"insertionIndex": 12,
"name": "deployments_gpt-35-turbo_chat_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"messages\":[{\"role\":\"user\",\"content\":\"Write a paragraph about hats\"},{\"role\":\"system\",\"content\":\"Use upper case text when responding to the prompt.\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"response": {
"body": "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253039,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"ac9817bc-7e1a-48e4-b06c-0ff7618b88c6\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":26,\"completion_tokens\":131,\"total_tokens\":157}}",
"headers": {},
"status": 200
},
"uuid": "0c8046c5-74ad-4836-8aa9-09da60f367a2"
}
@@ -1,26 +1,26 @@
{
"id" : "252c54f4-1111-467b-b028-7687e4ed5021",
"insertionIndex" : 27,
"name" : "deployments_gpt-35-turbo_chat_completions",
"newScenarioState" : "scenario-6-deployments-gpt-35-turbo-chat-completions-2",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"messages\":[{\"role\":\"assistant\",\"content\":\"You are a librarian, expert about books\"},{\"role\":\"user\",\"content\":\"Hi, I'm looking for book suggestions\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"requiredScenarioState" : "Started",
"response" : {
"body" : "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707252992,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"7d312938-df92-46bf-8729-8d7b92ddb026\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":27,\"completion_tokens\":76,\"total_tokens\":103}}",
"headers" : {},
"status" : 200
},
"scenarioName" : "scenario-6-deployments-gpt-35-turbo-chat-completions",
"uuid" : "252c54f4-1111-467b-b028-7687e4ed5021"
"id": "252c54f4-1111-467b-b028-7687e4ed5021",
"insertionIndex": 27,
"name": "deployments_gpt-35-turbo_chat_completions",
"newScenarioState": "scenario-6-deployments-gpt-35-turbo-chat-completions-2",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"messages\":[{\"role\":\"assistant\",\"content\":\"You are a librarian, expert about books\"},{\"role\":\"user\",\"content\":\"Hi, I'm looking for book suggestions\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"requiredScenarioState": "Started",
"response": {
"body": "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707252992,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"7d312938-df92-46bf-8729-8d7b92ddb026\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":27,\"completion_tokens\":76,\"total_tokens\":103}}",
"headers": {},
"status": 200
},
"scenarioName": "scenario-6-deployments-gpt-35-turbo-chat-completions",
"uuid": "252c54f4-1111-467b-b028-7687e4ed5021"
}
@@ -1,25 +1,25 @@
{
"id" : "270f9641-5867-4ca4-a738-d3b1d18faefb",
"insertionIndex" : 3,
"name" : "deployments_gpt-35-turbo_chat_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"messages\":[{\"role\":\"user\",\"content\":\"What is Seattle?\"},{\"role\":\"system\",\"content\":\"Respond with JSON.\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"requiredScenarioState" : "scenario-2-deployments-gpt-35-turbo-chat-completions-2",
"response" : {
"body" : "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253067,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"57e7d767-3d91-4622-8571-84710dd2e7ff\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":19,\"completion_tokens\":151,\"total_tokens\":170}}",
"headers" : {},
"status" : 200
},
"scenarioName" : "scenario-2-deployments-gpt-35-turbo-chat-completions",
"uuid" : "270f9641-5867-4ca4-a738-d3b1d18faefb"
"id": "270f9641-5867-4ca4-a738-d3b1d18faefb",
"insertionIndex": 3,
"name": "deployments_gpt-35-turbo_chat_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"messages\":[{\"role\":\"user\",\"content\":\"What is Seattle?\"},{\"role\":\"system\",\"content\":\"Respond with JSON.\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"requiredScenarioState": "scenario-2-deployments-gpt-35-turbo-chat-completions-2",
"response": {
"body": "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253067,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"57e7d767-3d91-4622-8571-84710dd2e7ff\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":19,\"completion_tokens\":151,\"total_tokens\":170}}",
"headers": {},
"status": 200
},
"scenarioName": "scenario-2-deployments-gpt-35-turbo-chat-completions",
"uuid": "270f9641-5867-4ca4-a738-d3b1d18faefb"
}
@@ -1,26 +1,26 @@
{
"id" : "364efff1-b5dd-4796-8c01-936b19045de2",
"insertionIndex" : 11,
"name" : "deployments_gpt-35-turbo_chat_completions",
"newScenarioState" : "scenario-5-deployments-gpt-35-turbo-chat-completions-2",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"messages\":[{\"role\":\"user\",\"content\":\"Hello AI, what can you do for me?\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"requiredScenarioState" : "Started",
"response" : {
"body" : "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253042,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"2fb33955-441a-429d-bbf6-603e449d21b6\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":17,\"completion_tokens\":197,\"total_tokens\":214}}",
"headers" : {},
"status" : 200
},
"scenarioName" : "scenario-5-deployments-gpt-35-turbo-chat-completions",
"uuid" : "364efff1-b5dd-4796-8c01-936b19045de2"
"id": "364efff1-b5dd-4796-8c01-936b19045de2",
"insertionIndex": 11,
"name": "deployments_gpt-35-turbo_chat_completions",
"newScenarioState": "scenario-5-deployments-gpt-35-turbo-chat-completions-2",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"messages\":[{\"role\":\"user\",\"content\":\"Hello AI, what can you do for me?\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"requiredScenarioState": "Started",
"response": {
"body": "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253042,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"2fb33955-441a-429d-bbf6-603e449d21b6\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":17,\"completion_tokens\":197,\"total_tokens\":214}}",
"headers": {},
"status": 200
},
"scenarioName": "scenario-5-deployments-gpt-35-turbo-chat-completions",
"uuid": "364efff1-b5dd-4796-8c01-936b19045de2"
}
@@ -1,23 +1,23 @@
{
"id" : "36d8c189-3b93-4a19-b92f-8effb670f75a",
"insertionIndex" : 26,
"name" : "deployments_gpt-35-turbo_chat_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"messages\":[{\"role\":\"assistant\",\"content\":\"You are a librarian, expert about books\"},{\"role\":\"user\",\"content\":\"Hi, I'm looking for book suggestions\"},{\"role\":\"assistant\",\"content\":\"Certainly! I'd be happy to help you find some book suggestions. Could you please provide me with more information about what kind of books you enjoy? For example, do you have any favorite genres or authors? Are you looking for fiction or non-fiction books? Any specific themes or topics you're interested in? The more details you can provide, the better I can assist you.\"},{\"role\":\"user\",\"content\":\"I love history and philosophy, I'd like to learn something new about Greece, any suggestion\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"response" : {
"body" : "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707252994,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"ace2c274-2932-4ba7-b132-6ec80ad55698\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":129,\"completion_tokens\":308,\"total_tokens\":437}}",
"headers" : {},
"status" : 200
},
"uuid" : "36d8c189-3b93-4a19-b92f-8effb670f75a"
"id": "36d8c189-3b93-4a19-b92f-8effb670f75a",
"insertionIndex": 26,
"name": "deployments_gpt-35-turbo_chat_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"messages\":[{\"role\":\"assistant\",\"content\":\"You are a librarian, expert about books\"},{\"role\":\"user\",\"content\":\"Hi, I'm looking for book suggestions\"},{\"role\":\"assistant\",\"content\":\"Certainly! I'd be happy to help you find some book suggestions. Could you please provide me with more information about what kind of books you enjoy? For example, do you have any favorite genres or authors? Are you looking for fiction or non-fiction books? Any specific themes or topics you're interested in? The more details you can provide, the better I can assist you.\"},{\"role\":\"user\",\"content\":\"I love history and philosophy, I'd like to learn something new about Greece, any suggestion\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"response": {
"body": "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707252994,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"ace2c274-2932-4ba7-b132-6ec80ad55698\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":129,\"completion_tokens\":308,\"total_tokens\":437}}",
"headers": {},
"status": 200
},
"uuid": "36d8c189-3b93-4a19-b92f-8effb670f75a"
}
@@ -1,23 +1,23 @@
{
"id" : "3708b848-8dbe-4c2d-a057-04abcee675c0",
"insertionIndex" : 22,
"name" : "deployments_gpt-35-turbo_chat_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"messages\":[{\"role\":\"user\",\"content\":\"Hi, give me 5 book suggestions about: travel\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"response" : {
"body" : "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253005,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"67c9623d-7f83-432b-89e5-40ffb3c343c2\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":18,\"completion_tokens\":281,\"total_tokens\":299}}",
"headers" : {},
"status" : 200
},
"uuid" : "3708b848-8dbe-4c2d-a057-04abcee675c0"
"id": "3708b848-8dbe-4c2d-a057-04abcee675c0",
"insertionIndex": 22,
"name": "deployments_gpt-35-turbo_chat_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"messages\":[{\"role\":\"user\",\"content\":\"Hi, give me 5 book suggestions about: travel\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"response": {
"body": "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253005,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"67c9623d-7f83-432b-89e5-40ffb3c343c2\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":18,\"completion_tokens\":281,\"total_tokens\":299}}",
"headers": {},
"status": 200
},
"uuid": "3708b848-8dbe-4c2d-a057-04abcee675c0"
}
@@ -1,23 +1,23 @@
{
"id" : "4939b782-4212-435b-8d7d-c3454fe0200c",
"insertionIndex" : 16,
"name" : "deployments_gpt-35-turbo_chat_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"messages\":[{\"role\":\"user\",\"content\":\"Write a random paragraph about: I missed the F1 final race in the style of Seinfeld.\\nUSE SHORT, CLEAR, COMPLETE SENTENCES.\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"response" : {
"body" : "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253027,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"8e81b11a-5cd0-40f1-a80d-641ec60a3bc4\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":36,\"completion_tokens\":336,\"total_tokens\":372}}",
"headers" : {},
"status" : 200
},
"uuid" : "4939b782-4212-435b-8d7d-c3454fe0200c"
"id": "4939b782-4212-435b-8d7d-c3454fe0200c",
"insertionIndex": 16,
"name": "deployments_gpt-35-turbo_chat_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"messages\":[{\"role\":\"user\",\"content\":\"Write a random paragraph about: I missed the F1 final race in the style of Seinfeld.\\nUSE SHORT, CLEAR, COMPLETE SENTENCES.\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"response": {
"body": "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253027,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"8e81b11a-5cd0-40f1-a80d-641ec60a3bc4\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":36,\"completion_tokens\":336,\"total_tokens\":372}}",
"headers": {},
"status": 200
},
"uuid": "4939b782-4212-435b-8d7d-c3454fe0200c"
}
@@ -1,26 +1,26 @@
{
"id" : "5d78a6d8-abca-488a-8752-599051a3e352",
"insertionIndex" : 4,
"name" : "deployments_gpt-35-turbo_chat_completions",
"newScenarioState" : "scenario-2-deployments-gpt-35-turbo-chat-completions-2",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"messages\":[{\"role\":\"user\",\"content\":\"What is Seattle?\"},{\"role\":\"system\",\"content\":\"Respond with JSON.\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"requiredScenarioState" : "Started",
"response" : {
"body" : "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253065,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"28374b87-21d3-4506-9569-3c7c4aaf9052\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":19,\"completion_tokens\":91,\"total_tokens\":110}}",
"headers" : {},
"status" : 200
},
"scenarioName" : "scenario-2-deployments-gpt-35-turbo-chat-completions",
"uuid" : "5d78a6d8-abca-488a-8752-599051a3e352"
"id": "5d78a6d8-abca-488a-8752-599051a3e352",
"insertionIndex": 4,
"name": "deployments_gpt-35-turbo_chat_completions",
"newScenarioState": "scenario-2-deployments-gpt-35-turbo-chat-completions-2",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"messages\":[{\"role\":\"user\",\"content\":\"What is Seattle?\"},{\"role\":\"system\",\"content\":\"Respond with JSON.\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"requiredScenarioState": "Started",
"response": {
"body": "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253065,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"28374b87-21d3-4506-9569-3c7c4aaf9052\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":19,\"completion_tokens\":91,\"total_tokens\":110}}",
"headers": {},
"status": 200
},
"scenarioName": "scenario-2-deployments-gpt-35-turbo-chat-completions",
"uuid": "5d78a6d8-abca-488a-8752-599051a3e352"
}
@@ -1,26 +1,26 @@
{
"id" : "604be5a5-3e55-44ee-a85f-9d9e63b1763a",
"insertionIndex" : 2,
"name" : "deployments_gpt-35-turbo_chat_completions",
"newScenarioState" : "scenario-1-deployments-gpt-35-turbo-chat-completions-2",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"messages\":[{\"role\":\"user\",\"content\":\"Hello AI, my name is Bob. What is the origin of my name?\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"requiredScenarioState" : "Started",
"response" : {
"body" : "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253070,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"aed93937-6747-4092-8b1d-6a3345a63197\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":23,\"completion_tokens\":75,\"total_tokens\":98}}",
"headers" : {},
"status" : 200
},
"scenarioName" : "scenario-1-deployments-gpt-35-turbo-chat-completions",
"uuid" : "604be5a5-3e55-44ee-a85f-9d9e63b1763a"
"id": "604be5a5-3e55-44ee-a85f-9d9e63b1763a",
"insertionIndex": 2,
"name": "deployments_gpt-35-turbo_chat_completions",
"newScenarioState": "scenario-1-deployments-gpt-35-turbo-chat-completions-2",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"messages\":[{\"role\":\"user\",\"content\":\"Hello AI, my name is Bob. What is the origin of my name?\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"requiredScenarioState": "Started",
"response": {
"body": "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253070,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"aed93937-6747-4092-8b1d-6a3345a63197\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":23,\"completion_tokens\":75,\"total_tokens\":98}}",
"headers": {},
"status": 200
},
"scenarioName": "scenario-1-deployments-gpt-35-turbo-chat-completions",
"uuid": "604be5a5-3e55-44ee-a85f-9d9e63b1763a"
}
@@ -1,23 +1,23 @@
{
"id" : "70facef2-7e60-49d5-8009-b38915a1b355",
"insertionIndex" : 23,
"name" : "deployments_gpt-35-turbo_chat_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"messages\":[{\"role\":\"assistant\",\"content\":\"You are a librarian, expert about books\"},{\"role\":\"user\",\"content\":\"Hi, I'm looking for book suggestions\"},{\"role\":\"assistant\",\"content\":\"Of course! I'd be happy to help you find some book suggestions. What genre or type of book are you interested in?\"},{\"role\":\"user\",\"content\":\"I love history and philosophy, I'd like to learn something new about Greece, any suggestion\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"response" : {
"body" : "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253001,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"6fe0e3aa-5670-435c-9c90-976f97ce9c4c\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":79,\"completion_tokens\":276,\"total_tokens\":355}}",
"headers" : {},
"status" : 200
},
"uuid" : "70facef2-7e60-49d5-8009-b38915a1b355"
"id": "70facef2-7e60-49d5-8009-b38915a1b355",
"insertionIndex": 23,
"name": "deployments_gpt-35-turbo_chat_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"messages\":[{\"role\":\"assistant\",\"content\":\"You are a librarian, expert about books\"},{\"role\":\"user\",\"content\":\"Hi, I'm looking for book suggestions\"},{\"role\":\"assistant\",\"content\":\"Of course! I'd be happy to help you find some book suggestions. What genre or type of book are you interested in?\"},{\"role\":\"user\",\"content\":\"I love history and philosophy, I'd like to learn something new about Greece, any suggestion\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"response": {
"body": "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253001,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"6fe0e3aa-5670-435c-9c90-976f97ce9c4c\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":79,\"completion_tokens\":276,\"total_tokens\":355}}",
"headers": {},
"status": 200
},
"uuid": "70facef2-7e60-49d5-8009-b38915a1b355"
}
@@ -1,25 +1,25 @@
{
"id" : "779728d0-3cfa-4374-aa56-7038de43449e",
"insertionIndex" : 24,
"name" : "deployments_gpt-35-turbo_chat_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"messages\":[{\"role\":\"assistant\",\"content\":\"You are a librarian, expert about books\"},{\"role\":\"user\",\"content\":\"Hi, I'm looking for book suggestions\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"requiredScenarioState" : "scenario-6-deployments-gpt-35-turbo-chat-completions-2",
"response" : {
"body" : "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253000,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"4772ff60-75e0-46bc-8224-6ec8ba5b9be1\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":27,\"completion_tokens\":26,\"total_tokens\":53}}",
"headers" : {},
"status" : 200
},
"scenarioName" : "scenario-6-deployments-gpt-35-turbo-chat-completions",
"uuid" : "779728d0-3cfa-4374-aa56-7038de43449e"
"id": "779728d0-3cfa-4374-aa56-7038de43449e",
"insertionIndex": 24,
"name": "deployments_gpt-35-turbo_chat_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"messages\":[{\"role\":\"assistant\",\"content\":\"You are a librarian, expert about books\"},{\"role\":\"user\",\"content\":\"Hi, I'm looking for book suggestions\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"requiredScenarioState": "scenario-6-deployments-gpt-35-turbo-chat-completions-2",
"response": {
"body": "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253000,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"4772ff60-75e0-46bc-8224-6ec8ba5b9be1\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":27,\"completion_tokens\":26,\"total_tokens\":53}}",
"headers": {},
"status": 200
},
"scenarioName": "scenario-6-deployments-gpt-35-turbo-chat-completions",
"uuid": "779728d0-3cfa-4374-aa56-7038de43449e"
}
@@ -1,23 +1,23 @@
{
"id" : "79f4220d-21e6-43e2-8a2e-6a281fcbfea9",
"insertionIndex" : 21,
"name" : "deployments_gpt-35-turbo_chat_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"messages\":[{\"role\":\"assistant\",\"content\":\"You are a librarian, expert about books\"},{\"role\":\"user\",\"content\":\"Hi, I'm looking for 3 different book suggestions about sci-fi\"}],\"max_tokens\":1024,\"temperature\":1.0,\"top_p\":1.0,\"logit_bias\":{},\"user\":\"\",\"n\":2,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"response" : {
"body" : "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253010,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"4949cf23-7039-4226-be78-8dd8c6e678e3\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}},{\"finish_reason\":\"stop\",\"index\":1,\"message\":{\"role\":\"assistant\",\"content\":\"7c66554a-3003-467d-9ce7-9bf7e22ab921\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"low\"}}}],\"usage\":{\"prompt_tokens\":33,\"completion_tokens\":640,\"total_tokens\":673}}",
"headers" : {},
"status" : 200
},
"uuid" : "79f4220d-21e6-43e2-8a2e-6a281fcbfea9"
"id": "79f4220d-21e6-43e2-8a2e-6a281fcbfea9",
"insertionIndex": 21,
"name": "deployments_gpt-35-turbo_chat_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"messages\":[{\"role\":\"assistant\",\"content\":\"You are a librarian, expert about books\"},{\"role\":\"user\",\"content\":\"Hi, I'm looking for 3 different book suggestions about sci-fi\"}],\"max_tokens\":1024,\"temperature\":1.0,\"top_p\":1.0,\"logit_bias\":{},\"user\":\"\",\"n\":2,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"response": {
"body": "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253010,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"4949cf23-7039-4226-be78-8dd8c6e678e3\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}},{\"finish_reason\":\"stop\",\"index\":1,\"message\":{\"role\":\"assistant\",\"content\":\"7c66554a-3003-467d-9ce7-9bf7e22ab921\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"low\"}}}],\"usage\":{\"prompt_tokens\":33,\"completion_tokens\":640,\"total_tokens\":673}}",
"headers": {},
"status": 200
},
"uuid": "79f4220d-21e6-43e2-8a2e-6a281fcbfea9"
}
@@ -1,23 +1,23 @@
{
"id" : "8ccdcbb2-4a82-47c4-a3da-93041481ce06",
"insertionIndex" : 18,
"name" : "deployments_gpt-35-turbo_chat_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"messages\":[{\"role\":\"user\",\"content\":\"Write a haiku about the following: Harry Potter\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"response" : {
"body" : "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253023,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"9043bdfe-acca-4068-8880-31f68015d800\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"low\"}}}],\"usage\":{\"prompt_tokens\":17,\"completion_tokens\":18,\"total_tokens\":35}}",
"headers" : {},
"status" : 200
},
"uuid" : "8ccdcbb2-4a82-47c4-a3da-93041481ce06"
"id": "8ccdcbb2-4a82-47c4-a3da-93041481ce06",
"insertionIndex": 18,
"name": "deployments_gpt-35-turbo_chat_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"messages\":[{\"role\":\"user\",\"content\":\"Write a haiku about the following: Harry Potter\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"response": {
"body": "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253023,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"9043bdfe-acca-4068-8880-31f68015d800\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"low\"}}}],\"usage\":{\"prompt_tokens\":17,\"completion_tokens\":18,\"total_tokens\":35}}",
"headers": {},
"status": 200
},
"uuid": "8ccdcbb2-4a82-47c4-a3da-93041481ce06"
}
@@ -1,23 +1,23 @@
{
"id" : "bcdbf876-8b4c-4de1-99b4-deaad761fdbe",
"insertionIndex" : 14,
"name" : "deployments_gpt-35-turbo_chat_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"messages\":[{\"role\":\"user\",\"content\":\"Write a phrase with Cancellation.\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"response" : {
"body" : "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253036,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"49ec813d-2f20-4424-9a3f-b6ead6b4894f\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":14,\"completion_tokens\":12,\"total_tokens\":26}}",
"headers" : {},
"status" : 200
},
"uuid" : "bcdbf876-8b4c-4de1-99b4-deaad761fdbe"
"id": "bcdbf876-8b4c-4de1-99b4-deaad761fdbe",
"insertionIndex": 14,
"name": "deployments_gpt-35-turbo_chat_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"messages\":[{\"role\":\"user\",\"content\":\"Write a phrase with Cancellation.\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"response": {
"body": "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253036,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"49ec813d-2f20-4424-9a3f-b6ead6b4894f\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":14,\"completion_tokens\":12,\"total_tokens\":26}}",
"headers": {},
"status": 200
},
"uuid": "bcdbf876-8b4c-4de1-99b4-deaad761fdbe"
}
@@ -1,25 +1,25 @@
{
"id" : "c71f3ff7-70f7-4966-a752-811bf1c01382",
"insertionIndex" : 1,
"name" : "deployments_gpt-35-turbo_chat_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"messages\":[{\"role\":\"user\",\"content\":\"Hello AI, my name is Bob. What is the origin of my name?\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"requiredScenarioState" : "scenario-1-deployments-gpt-35-turbo-chat-completions-2",
"response" : {
"body" : "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253072,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"b82a811f-96d2-479f-96db-cadddfa99c1d\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":23,\"completion_tokens\":80,\"total_tokens\":103}}",
"headers" : {},
"status" : 200
},
"scenarioName" : "scenario-1-deployments-gpt-35-turbo-chat-completions",
"uuid" : "c71f3ff7-70f7-4966-a752-811bf1c01382"
"id": "c71f3ff7-70f7-4966-a752-811bf1c01382",
"insertionIndex": 1,
"name": "deployments_gpt-35-turbo_chat_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"messages\":[{\"role\":\"user\",\"content\":\"Hello AI, my name is Bob. What is the origin of my name?\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"requiredScenarioState": "scenario-1-deployments-gpt-35-turbo-chat-completions-2",
"response": {
"body": "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253072,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"b82a811f-96d2-479f-96db-cadddfa99c1d\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":23,\"completion_tokens\":80,\"total_tokens\":103}}",
"headers": {},
"status": 200
},
"scenarioName": "scenario-1-deployments-gpt-35-turbo-chat-completions",
"uuid": "c71f3ff7-70f7-4966-a752-811bf1c01382"
}
@@ -1,23 +1,23 @@
{
"id" : "ca797b35-ef23-4628-9c6f-b1ea00ba5e3e",
"insertionIndex" : 15,
"name" : "deployments_gpt-35-turbo_chat_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"messages\":[{\"role\":\"user\",\"content\":\"Write a paragraph about Handlers.\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"response" : {
"body" : "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253032,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"49c63368-9fe4-42ca-bd0c-ff1064c44eb6\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":13,\"completion_tokens\":149,\"total_tokens\":162}}",
"headers" : {},
"status" : 200
},
"uuid" : "ca797b35-ef23-4628-9c6f-b1ea00ba5e3e"
"id": "ca797b35-ef23-4628-9c6f-b1ea00ba5e3e",
"insertionIndex": 15,
"name": "deployments_gpt-35-turbo_chat_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"messages\":[{\"role\":\"user\",\"content\":\"Write a paragraph about Handlers.\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"response": {
"body": "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253032,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"49c63368-9fe4-42ca-bd0c-ff1064c44eb6\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":13,\"completion_tokens\":149,\"total_tokens\":162}}",
"headers": {},
"status": 200
},
"uuid": "ca797b35-ef23-4628-9c6f-b1ea00ba5e3e"
}
@@ -1,25 +1,25 @@
{
"id" : "daf144e4-182b-4100-91f2-49b6115a1026",
"insertionIndex" : 10,
"name" : "deployments_gpt-35-turbo_chat_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"messages\":[{\"role\":\"user\",\"content\":\"Hello AI, what can you do for me?\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"requiredScenarioState" : "scenario-5-deployments-gpt-35-turbo-chat-completions-2",
"response" : {
"body" : "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253047,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"4aab22a1-8bb4-462e-a72d-5abeb5b91335\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":17,\"completion_tokens\":251,\"total_tokens\":268}}",
"headers" : {},
"status" : 200
},
"scenarioName" : "scenario-5-deployments-gpt-35-turbo-chat-completions",
"uuid" : "daf144e4-182b-4100-91f2-49b6115a1026"
"id": "daf144e4-182b-4100-91f2-49b6115a1026",
"insertionIndex": 10,
"name": "deployments_gpt-35-turbo_chat_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"messages\":[{\"role\":\"user\",\"content\":\"Hello AI, what can you do for me?\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"requiredScenarioState": "scenario-5-deployments-gpt-35-turbo-chat-completions-2",
"response": {
"body": "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253047,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"4aab22a1-8bb4-462e-a72d-5abeb5b91335\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":17,\"completion_tokens\":251,\"total_tokens\":268}}",
"headers": {},
"status": 200
},
"scenarioName": "scenario-5-deployments-gpt-35-turbo-chat-completions",
"uuid": "daf144e4-182b-4100-91f2-49b6115a1026"
}
@@ -1,23 +1,23 @@
{
"id" : "dc3d7bb6-815c-44fc-a15f-a6f9ce7eb012",
"insertionIndex" : 13,
"name" : "deployments_gpt-35-turbo_chat_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"messages\":[{\"role\":\"user\",\"content\":\"Write a paragraph about hats\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"response" : {
"body" : "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253037,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"8dafdc23-45e2-4c72-949d-0b88c107c76e\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":12,\"completion_tokens\":130,\"total_tokens\":142}}",
"headers" : {},
"status" : 200
},
"uuid" : "dc3d7bb6-815c-44fc-a15f-a6f9ce7eb012"
"id": "dc3d7bb6-815c-44fc-a15f-a6f9ce7eb012",
"insertionIndex": 13,
"name": "deployments_gpt-35-turbo_chat_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"messages\":[{\"role\":\"user\",\"content\":\"Write a paragraph about hats\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"response": {
"body": "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253037,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"8dafdc23-45e2-4c72-949d-0b88c107c76e\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":12,\"completion_tokens\":130,\"total_tokens\":142}}",
"headers": {},
"status": 200
},
"uuid": "dc3d7bb6-815c-44fc-a15f-a6f9ce7eb012"
}
@@ -1,23 +1,23 @@
{
"id" : "f0070b1d-f4eb-4691-9d72-a0b935a227eb",
"insertionIndex" : 17,
"name" : "deployments_gpt-35-turbo_chat_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"messages\":[{\"role\":\"user\",\"content\":\"Write a random paragraph about: I missed the F1 final race.\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"response" : {
"body" : "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253024,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"97aeec5d-1555-4548-a681-cb1cc52b15c5\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":21,\"completion_tokens\":175,\"total_tokens\":196}}",
"headers" : {},
"status" : 200
},
"uuid" : "f0070b1d-f4eb-4691-9d72-a0b935a227eb"
"id": "f0070b1d-f4eb-4691-9d72-a0b935a227eb",
"insertionIndex": 17,
"name": "deployments_gpt-35-turbo_chat_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"messages\":[{\"role\":\"user\",\"content\":\"Write a random paragraph about: I missed the F1 final race.\"}],\"model\":\"gpt-35-turbo\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/gpt-35-turbo/chat/completions?api-version=2023-12-01-preview"
},
"response": {
"body": "{\"id\":\"chatcmpl-xxx\",\"object\":\"chat.completion\",\"created\":1707253024,\"model\":\"gpt-35-turbo\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"finish_reason\":\"stop\",\"index\":0,\"message\":{\"role\":\"assistant\",\"content\":\"97aeec5d-1555-4548-a681-cb1cc52b15c5\"},\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":21,\"completion_tokens\":175,\"total_tokens\":196}}",
"headers": {},
"status": 200
},
"uuid": "f0070b1d-f4eb-4691-9d72-a0b935a227eb"
}
@@ -1,26 +1,26 @@
{
"id" : "0215b128-4822-4368-ac3d-2f580a221f00",
"insertionIndex" : 6,
"name" : "deployments_text-davinci-003_completions",
"newScenarioState" : "scenario-3-deployments-text-davinci-003-completions-3",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"prompt\":[\"Hello AI, what can you do for me?\"],\"max_tokens\":256,\"temperature\":1.0,\"top_p\":1.0,\"logit_bias\":{},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"best_of\":1,\"model\":\"text-davinci-003\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/text-davinci-003/completions?api-version=2023-12-01-preview"
},
"requiredScenarioState" : "scenario-3-deployments-text-davinci-003-completions-2",
"response" : {
"body" : "{\"id\":\"cmpl-xxx\",\"object\":\"text_completion\",\"created\":1707253062,\"model\":\"text-davinci-003\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"text\":\"7949e981-c632-422f-9b76-335a2379cd83\",\"index\":0,\"finish_reason\":\"stop\",\"logprobs\":null,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":10,\"completion_tokens\":26,\"total_tokens\":36}}",
"headers" : {},
"status" : 200
},
"scenarioName" : "scenario-3-deployments-text-davinci-003-completions",
"uuid" : "0215b128-4822-4368-ac3d-2f580a221f00"
"id": "0215b128-4822-4368-ac3d-2f580a221f00",
"insertionIndex": 6,
"name": "deployments_text-davinci-003_completions",
"newScenarioState": "scenario-3-deployments-text-davinci-003-completions-3",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"prompt\":[\"Hello AI, what can you do for me?\"],\"max_tokens\":256,\"temperature\":1.0,\"top_p\":1.0,\"logit_bias\":{},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"best_of\":1,\"model\":\"text-davinci-003\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/text-davinci-003/completions?api-version=2023-12-01-preview"
},
"requiredScenarioState": "scenario-3-deployments-text-davinci-003-completions-2",
"response": {
"body": "{\"id\":\"cmpl-xxx\",\"object\":\"text_completion\",\"created\":1707253062,\"model\":\"text-davinci-003\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"text\":\"7949e981-c632-422f-9b76-335a2379cd83\",\"index\":0,\"finish_reason\":\"stop\",\"logprobs\":null,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":10,\"completion_tokens\":26,\"total_tokens\":36}}",
"headers": {},
"status": 200
},
"scenarioName": "scenario-3-deployments-text-davinci-003-completions",
"uuid": "0215b128-4822-4368-ac3d-2f580a221f00"
}
@@ -1,25 +1,25 @@
{
"id" : "1296bcee-1e54-43b1-b4b3-4642dd8bd0a0",
"insertionIndex" : 5,
"name" : "deployments_text-davinci-003_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"prompt\":[\"Hello AI, what can you do for me?\"],\"max_tokens\":256,\"temperature\":1.0,\"top_p\":1.0,\"logit_bias\":{},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"best_of\":1,\"model\":\"text-davinci-003\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/text-davinci-003/completions?api-version=2023-12-01-preview"
},
"requiredScenarioState" : "scenario-3-deployments-text-davinci-003-completions-3",
"response" : {
"body" : "{\"id\":\"cmpl-xxx\",\"object\":\"text_completion\",\"created\":1707253064,\"model\":\"text-davinci-003\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"text\":\"f3d22bfb-13ae-41f1-ba1c-e162da7cf3ec\",\"index\":0,\"finish_reason\":\"stop\",\"logprobs\":null,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":10,\"completion_tokens\":34,\"total_tokens\":44}}",
"headers" : {},
"status" : 200
},
"scenarioName" : "scenario-3-deployments-text-davinci-003-completions",
"uuid" : "1296bcee-1e54-43b1-b4b3-4642dd8bd0a0"
"id": "1296bcee-1e54-43b1-b4b3-4642dd8bd0a0",
"insertionIndex": 5,
"name": "deployments_text-davinci-003_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"prompt\":[\"Hello AI, what can you do for me?\"],\"max_tokens\":256,\"temperature\":1.0,\"top_p\":1.0,\"logit_bias\":{},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"best_of\":1,\"model\":\"text-davinci-003\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/text-davinci-003/completions?api-version=2023-12-01-preview"
},
"requiredScenarioState": "scenario-3-deployments-text-davinci-003-completions-3",
"response": {
"body": "{\"id\":\"cmpl-xxx\",\"object\":\"text_completion\",\"created\":1707253064,\"model\":\"text-davinci-003\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"text\":\"f3d22bfb-13ae-41f1-ba1c-e162da7cf3ec\",\"index\":0,\"finish_reason\":\"stop\",\"logprobs\":null,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":10,\"completion_tokens\":34,\"total_tokens\":44}}",
"headers": {},
"status": 200
},
"scenarioName": "scenario-3-deployments-text-davinci-003-completions",
"uuid": "1296bcee-1e54-43b1-b4b3-4642dd8bd0a0"
}
@@ -1,23 +1,23 @@
{
"id" : "350fea53-3d73-4d59-b603-dba32fdc5af9",
"insertionIndex" : 37,
"name" : "deployments_text-davinci-003_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"prompt\":[\" Generate a creative reason or excuse for the given event.\\n Be creative and be funny. Let your imagination run wild.\\n\\n Event: I am running late.\\n Excuse: I was being held ransom by giraffe gangsters.\\n\\n Event: I haven't been to the gym for a year\\n Excuse: I've been too busy training my pet dragon.\\n\\n Event: I missed the F1 final race\\n\"],\"max_tokens\":100,\"temperature\":0.4,\"top_p\":1.0,\"logit_bias\":{},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"best_of\":1,\"model\":\"text-davinci-003\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/text-davinci-003/completions?api-version=2023-12-01-preview"
},
"response" : {
"body" : "{\"id\":\"cmpl-xxx\",\"object\":\"text_completion\",\"created\":1707252975,\"model\":\"text-davinci-003\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"text\":\"1ec9fb4c-eae2-44b4-9974-c87d452220ae\",\"index\":0,\"finish_reason\":\"stop\",\"logprobs\":null,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":93,\"completion_tokens\":15,\"total_tokens\":108}}",
"headers" : {},
"status" : 200
},
"uuid" : "350fea53-3d73-4d59-b603-dba32fdc5af9"
"id": "350fea53-3d73-4d59-b603-dba32fdc5af9",
"insertionIndex": 37,
"name": "deployments_text-davinci-003_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"prompt\":[\" Generate a creative reason or excuse for the given event.\\n Be creative and be funny. Let your imagination run wild.\\n\\n Event: I am running late.\\n Excuse: I was being held ransom by giraffe gangsters.\\n\\n Event: I haven't been to the gym for a year\\n Excuse: I've been too busy training my pet dragon.\\n\\n Event: I missed the F1 final race\\n\"],\"max_tokens\":100,\"temperature\":0.4,\"top_p\":1.0,\"logit_bias\":{},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"best_of\":1,\"model\":\"text-davinci-003\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/text-davinci-003/completions?api-version=2023-12-01-preview"
},
"response": {
"body": "{\"id\":\"cmpl-xxx\",\"object\":\"text_completion\",\"created\":1707252975,\"model\":\"text-davinci-003\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"text\":\"1ec9fb4c-eae2-44b4-9974-c87d452220ae\",\"index\":0,\"finish_reason\":\"stop\",\"logprobs\":null,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":93,\"completion_tokens\":15,\"total_tokens\":108}}",
"headers": {},
"status": 200
},
"uuid": "350fea53-3d73-4d59-b603-dba32fdc5af9"
}
@@ -1,23 +1,23 @@
{
"id" : "3ce79fbf-90ee-4575-aeb4-6f7d545d1db6",
"insertionIndex" : 32,
"name" : "deployments_text-davinci-003_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"prompt\":[\"BEGIN CONTENT TO SUMMARIZE:\\nJane: I think we're almost there. Let me check.\\nJane: I have some bad news, we're only half way there.\\nJohn: Oh no, I'm not sure I can keep going. I'm getting tired.\\nJane: I'm getting tired too.\\nJohn: Maybe there is a large piece of text we can use to generate a long conversation.\\nJane: That's a good idea. Let me see if I can find one. Maybe Lorem Ipsum?\\nJohn: Yeah, that's a good idea.\\nJane: I found a Lorem Ipsum generator.\\nJane: Here's a 4096 character Lorem Ipsum text:\\nJane: Lorem ipsum dolor sit amet, con\\nJane: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed euismod, nunc sit amet aliquam\\nJane: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed euismod, nunc sit amet aliquam\\nJane: Darn, it's just repeating stuf now.\\nJohn: I think we're done.\\nJane: We're not though! We need like 1500 more characters.\\nJohn: Oh Cananda, our home and native land.\\nJane: True patriot love in all thy sons command.\\nJohn: With glowing hearts we see thee rise.\\nJane: The True North strong and free.\\nJohn: From far and wide, O Canada, we stand on guard for thee.\\nJane: God keep our land glorious and free.\\nJohn: O Canada, we stand on guard for thee.\\nJane: O Canada, we stand on guard for thee.\\nJane: That was fun, thank you. Let me check now.\\nJane: I think we need about 600 more characters.\\nJohn: Oh say can you see?\\nJane: By the dawn's early light.\\nJohn: What so proudly we hailed.\\nJane: At the twilight's last gleaming.\\nJohn: Whose broad stripes and bright stars.\\nJane: Through the perilous fight.\\nJohn: O'er the ramparts we watched.\\nJane: Were so gallantly streaming.\\nJohn: And the rockets' red glare.\\nJane: The bombs bursting in air.\\nJohn: Gave proof through the night.\\nJane: That our flag was still there.\\nJohn: Oh say does that star-spangled banner yet wave.\\nJane: O'er the land of the free.\\nJohn: And the home of the brave.\\nJane: Are you a Seattle Kraken Fan?\\nJohn: Yes, I am. I love going to the games.\\nJane: I'm a Seattle Kraken Fan too. Who is your favorite player?\\nJohn: I like watching all the players, but I think my favorite is Matty Beniers.\\nJane: Yeah, he's a great player. I like watching him too. I also like watching Jaden Schwartz.\\nJohn: Adam Larsson is another good one. The big cat!\\nJane: WE MADE IT! It's long enough. Thank you!\\nJohn: Can you automate generating long text next time?\\nJane: I will.\\nJohn: You're welcome. I'm glad we could help. Goodbye!\\nJane: Goodbye!\\n\\nEND CONTENT TO SUMMARIZE.\\n\\nSummarize the conversation in 'CONTENT TO SUMMARIZE', identifying main points of discussion and any conclusions that were reached.\\nDo not incorporate other general knowledge.\\nSummary is in plain text, in complete sentences, with no markup or tags.\\n\\nBEGIN SUMMARY:\\n\"],\"max_tokens\":1024,\"temperature\":0.1,\"top_p\":0.5,\"logit_bias\":{},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"best_of\":1,\"model\":\"text-davinci-003\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/text-davinci-003/completions?api-version=2023-12-01-preview"
},
"response" : {
"body" : "{\"id\":\"cmpl-xxx\",\"object\":\"text_completion\",\"created\":1707252982,\"model\":\"text-davinci-003\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"text\":\"caf6e239-7150-4d70-b814-62cd93e7c525\",\"index\":0,\"finish_reason\":\"stop\",\"logprobs\":null,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":791,\"completion_tokens\":48,\"total_tokens\":839}}",
"headers" : {},
"status" : 200
},
"uuid" : "3ce79fbf-90ee-4575-aeb4-6f7d545d1db6"
"id": "3ce79fbf-90ee-4575-aeb4-6f7d545d1db6",
"insertionIndex": 32,
"name": "deployments_text-davinci-003_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"prompt\":[\"BEGIN CONTENT TO SUMMARIZE:\\nJane: I think we're almost there. Let me check.\\nJane: I have some bad news, we're only half way there.\\nJohn: Oh no, I'm not sure I can keep going. I'm getting tired.\\nJane: I'm getting tired too.\\nJohn: Maybe there is a large piece of text we can use to generate a long conversation.\\nJane: That's a good idea. Let me see if I can find one. Maybe Lorem Ipsum?\\nJohn: Yeah, that's a good idea.\\nJane: I found a Lorem Ipsum generator.\\nJane: Here's a 4096 character Lorem Ipsum text:\\nJane: Lorem ipsum dolor sit amet, con\\nJane: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed euismod, nunc sit amet aliquam\\nJane: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed euismod, nunc sit amet aliquam\\nJane: Darn, it's just repeating stuf now.\\nJohn: I think we're done.\\nJane: We're not though! We need like 1500 more characters.\\nJohn: Oh Cananda, our home and native land.\\nJane: True patriot love in all thy sons command.\\nJohn: With glowing hearts we see thee rise.\\nJane: The True North strong and free.\\nJohn: From far and wide, O Canada, we stand on guard for thee.\\nJane: God keep our land glorious and free.\\nJohn: O Canada, we stand on guard for thee.\\nJane: O Canada, we stand on guard for thee.\\nJane: That was fun, thank you. Let me check now.\\nJane: I think we need about 600 more characters.\\nJohn: Oh say can you see?\\nJane: By the dawn's early light.\\nJohn: What so proudly we hailed.\\nJane: At the twilight's last gleaming.\\nJohn: Whose broad stripes and bright stars.\\nJane: Through the perilous fight.\\nJohn: O'er the ramparts we watched.\\nJane: Were so gallantly streaming.\\nJohn: And the rockets' red glare.\\nJane: The bombs bursting in air.\\nJohn: Gave proof through the night.\\nJane: That our flag was still there.\\nJohn: Oh say does that star-spangled banner yet wave.\\nJane: O'er the land of the free.\\nJohn: And the home of the brave.\\nJane: Are you a Seattle Kraken Fan?\\nJohn: Yes, I am. I love going to the games.\\nJane: I'm a Seattle Kraken Fan too. Who is your favorite player?\\nJohn: I like watching all the players, but I think my favorite is Matty Beniers.\\nJane: Yeah, he's a great player. I like watching him too. I also like watching Jaden Schwartz.\\nJohn: Adam Larsson is another good one. The big cat!\\nJane: WE MADE IT! It's long enough. Thank you!\\nJohn: Can you automate generating long text next time?\\nJane: I will.\\nJohn: You're welcome. I'm glad we could help. Goodbye!\\nJane: Goodbye!\\n\\nEND CONTENT TO SUMMARIZE.\\n\\nSummarize the conversation in 'CONTENT TO SUMMARIZE', identifying main points of discussion and any conclusions that were reached.\\nDo not incorporate other general knowledge.\\nSummary is in plain text, in complete sentences, with no markup or tags.\\n\\nBEGIN SUMMARY:\\n\"],\"max_tokens\":1024,\"temperature\":0.1,\"top_p\":0.5,\"logit_bias\":{},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"best_of\":1,\"model\":\"text-davinci-003\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/text-davinci-003/completions?api-version=2023-12-01-preview"
},
"response": {
"body": "{\"id\":\"cmpl-xxx\",\"object\":\"text_completion\",\"created\":1707252982,\"model\":\"text-davinci-003\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"text\":\"caf6e239-7150-4d70-b814-62cd93e7c525\",\"index\":0,\"finish_reason\":\"stop\",\"logprobs\":null,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":791,\"completion_tokens\":48,\"total_tokens\":839}}",
"headers": {},
"status": 200
},
"uuid": "3ce79fbf-90ee-4575-aeb4-6f7d545d1db6"
}
@@ -1,23 +1,23 @@
{
"id" : "3d48b3d9-5263-4d35-97dc-6db5b0335989",
"insertionIndex" : 30,
"name" : "deployments_text-davinci-003_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"prompt\":[\"You are an action item extractor. You will be given chat history and need to make note of action items mentioned in the chat.\\nExtract action items from the content if there are any. If there are no action, return nothing. If a single field is missing, use an empty string.\\nReturn the action items in json.\\n\\nPossible statuses for action items are: Open, Closed, In Progress.\\n\\nEXAMPLE INPUT WITH ACTION ITEMS:\\n\\nJohn Doe said: \\\"I will record a demo for the new feature by Friday\\\"\\nI said: \\\"Great, thanks John. We may not use all of it but it's good to get it out there.\\\"\\n\\nEXAMPLE OUTPUT:\\n{\\n \\\"actionItems\\\": [\\n {\\n \\\"owner\\\": \\\"John Doe\\\",\\n \\\"actionItem\\\": \\\"Record a demo for the new feature\\\",\\n \\\"dueDate\\\": \\\"Friday\\\",\\n \\\"status\\\": \\\"Open\\\",\\n \\\"notes\\\": \\\"\\n }\\n ]\\n}\\n\\nEXAMPLE INPUT WITHOUT ACTION ITEMS:\\n\\nJohn Doe said: \\\"Hey I'm going to the store, do you need anything?\\\"\\nI said: \\\"No thanks, I'm good.\\\"\\n\\nEXAMPLE OUTPUT:\\n{\\n \\\"action_items\\\": []\\n}\\n\\nCONTENT STARTS HERE.\\n\\nJane: I think we're almost there. Let me check.\\nJane: I have some bad news, we're only half way there.\\nJohn: Oh no, I'm not sure I can keep going. I'm getting tired.\\nJane: I'm getting tired too.\\nJohn: Maybe there is a large piece of text we can use to generate a long conversation.\\nJane: That's a good idea. Let me see if I can find one. Maybe Lorem Ipsum?\\nJohn: Yeah, that's a good idea.\\nJane: I found a Lorem Ipsum generator.\\nJane: Here's a 4096 character Lorem Ipsum text:\\nJane: Lorem ipsum dolor sit amet, con\\nJane: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed euismod, nunc sit amet aliquam\\nJane: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed euismod, nunc sit amet aliquam\\nJane: Darn, it's just repeating stuf now.\\nJohn: I think we're done.\\nJane: We're not though! We need like 1500 more characters.\\nJohn: Oh Cananda, our home and native land.\\nJane: True patriot love in all thy sons command.\\nJohn: With glowing hearts we see thee rise.\\nJane: The True North strong and free.\\nJohn: From far and wide, O Canada, we stand on guard for thee.\\nJane: God keep our land glorious and free.\\nJohn: O Canada, we stand on guard for thee.\\nJane: O Canada, we stand on guard for thee.\\nJane: That was fun, thank you. Let me check now.\\nJane: I think we need about 600 more characters.\\nJohn: Oh say can you see?\\nJane: By the dawn's early light.\\nJohn: What so proudly we hailed.\\nJane: At the twilight's last gleaming.\\nJohn: Whose broad stripes and bright stars.\\nJane: Through the perilous fight.\\nJohn: O'er the ramparts we watched.\\nJane: Were so gallantly streaming.\\nJohn: And the rockets' red glare.\\nJane: The bombs bursting in air.\\nJohn: Gave proof through the night.\\nJane: That our flag was still there.\\nJohn: Oh say does that star-spangled banner yet wave.\\nJane: O'er the land of the free.\\nJohn: And the home of the brave.\\nJane: Are you a Seattle Kraken Fan?\\nJohn: Yes, I am. I love going to the games.\\nJane: I'm a Seattle Kraken Fan too. Who is your favorite player?\\nJohn: I like watching all the players, but I think my favorite is Matty Beniers.\\nJane: Yeah, he's a great player. I like watching him too. I also like watching Jaden Schwartz.\\nJohn: Adam Larsson is another good one. The big cat!\\nJane: WE MADE IT! It's long enough. Thank you!\\nJohn: Can you automate generating long text next time?\\nJane: I will.\\nJohn: You're welcome. I'm glad we could help. Goodbye!\\nJane: Goodbye!\\n\\nCONTENT STOPS HERE.\\n\\nOUTPUT:\\n\"],\"max_tokens\":1024,\"temperature\":0.1,\"top_p\":0.5,\"logit_bias\":{},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"best_of\":1,\"model\":\"text-davinci-003\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/text-davinci-003/completions?api-version=2023-12-01-preview"
},
"response" : {
"body" : "{\"id\":\"cmpl-xxx\",\"object\":\"text_completion\",\"created\":1707252987,\"model\":\"text-davinci-003\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"text\":\"cab3c6e5-6681-48a0-8c56-3727299a890d\",\"index\":0,\"finish_reason\":\"stop\",\"logprobs\":null,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":1018,\"completion_tokens\":62,\"total_tokens\":1080}}",
"headers" : {},
"status" : 200
},
"uuid" : "3d48b3d9-5263-4d35-97dc-6db5b0335989"
"id": "3d48b3d9-5263-4d35-97dc-6db5b0335989",
"insertionIndex": 30,
"name": "deployments_text-davinci-003_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"prompt\":[\"You are an action item extractor. You will be given chat history and need to make note of action items mentioned in the chat.\\nExtract action items from the content if there are any. If there are no action, return nothing. If a single field is missing, use an empty string.\\nReturn the action items in json.\\n\\nPossible statuses for action items are: Open, Closed, In Progress.\\n\\nEXAMPLE INPUT WITH ACTION ITEMS:\\n\\nJohn Doe said: \\\"I will record a demo for the new feature by Friday\\\"\\nI said: \\\"Great, thanks John. We may not use all of it but it's good to get it out there.\\\"\\n\\nEXAMPLE OUTPUT:\\n{\\n \\\"actionItems\\\": [\\n {\\n \\\"owner\\\": \\\"John Doe\\\",\\n \\\"actionItem\\\": \\\"Record a demo for the new feature\\\",\\n \\\"dueDate\\\": \\\"Friday\\\",\\n \\\"status\\\": \\\"Open\\\",\\n \\\"notes\\\": \\\"\\n }\\n ]\\n}\\n\\nEXAMPLE INPUT WITHOUT ACTION ITEMS:\\n\\nJohn Doe said: \\\"Hey I'm going to the store, do you need anything?\\\"\\nI said: \\\"No thanks, I'm good.\\\"\\n\\nEXAMPLE OUTPUT:\\n{\\n \\\"action_items\\\": []\\n}\\n\\nCONTENT STARTS HERE.\\n\\nJane: I think we're almost there. Let me check.\\nJane: I have some bad news, we're only half way there.\\nJohn: Oh no, I'm not sure I can keep going. I'm getting tired.\\nJane: I'm getting tired too.\\nJohn: Maybe there is a large piece of text we can use to generate a long conversation.\\nJane: That's a good idea. Let me see if I can find one. Maybe Lorem Ipsum?\\nJohn: Yeah, that's a good idea.\\nJane: I found a Lorem Ipsum generator.\\nJane: Here's a 4096 character Lorem Ipsum text:\\nJane: Lorem ipsum dolor sit amet, con\\nJane: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed euismod, nunc sit amet aliquam\\nJane: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed euismod, nunc sit amet aliquam\\nJane: Darn, it's just repeating stuf now.\\nJohn: I think we're done.\\nJane: We're not though! We need like 1500 more characters.\\nJohn: Oh Cananda, our home and native land.\\nJane: True patriot love in all thy sons command.\\nJohn: With glowing hearts we see thee rise.\\nJane: The True North strong and free.\\nJohn: From far and wide, O Canada, we stand on guard for thee.\\nJane: God keep our land glorious and free.\\nJohn: O Canada, we stand on guard for thee.\\nJane: O Canada, we stand on guard for thee.\\nJane: That was fun, thank you. Let me check now.\\nJane: I think we need about 600 more characters.\\nJohn: Oh say can you see?\\nJane: By the dawn's early light.\\nJohn: What so proudly we hailed.\\nJane: At the twilight's last gleaming.\\nJohn: Whose broad stripes and bright stars.\\nJane: Through the perilous fight.\\nJohn: O'er the ramparts we watched.\\nJane: Were so gallantly streaming.\\nJohn: And the rockets' red glare.\\nJane: The bombs bursting in air.\\nJohn: Gave proof through the night.\\nJane: That our flag was still there.\\nJohn: Oh say does that star-spangled banner yet wave.\\nJane: O'er the land of the free.\\nJohn: And the home of the brave.\\nJane: Are you a Seattle Kraken Fan?\\nJohn: Yes, I am. I love going to the games.\\nJane: I'm a Seattle Kraken Fan too. Who is your favorite player?\\nJohn: I like watching all the players, but I think my favorite is Matty Beniers.\\nJane: Yeah, he's a great player. I like watching him too. I also like watching Jaden Schwartz.\\nJohn: Adam Larsson is another good one. The big cat!\\nJane: WE MADE IT! It's long enough. Thank you!\\nJohn: Can you automate generating long text next time?\\nJane: I will.\\nJohn: You're welcome. I'm glad we could help. Goodbye!\\nJane: Goodbye!\\n\\nCONTENT STOPS HERE.\\n\\nOUTPUT:\\n\"],\"max_tokens\":1024,\"temperature\":0.1,\"top_p\":0.5,\"logit_bias\":{},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"best_of\":1,\"model\":\"text-davinci-003\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/text-davinci-003/completions?api-version=2023-12-01-preview"
},
"response": {
"body": "{\"id\":\"cmpl-xxx\",\"object\":\"text_completion\",\"created\":1707252987,\"model\":\"text-davinci-003\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"text\":\"cab3c6e5-6681-48a0-8c56-3727299a890d\",\"index\":0,\"finish_reason\":\"stop\",\"logprobs\":null,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":1018,\"completion_tokens\":62,\"total_tokens\":1080}}",
"headers": {},
"status": 200
},
"uuid": "3d48b3d9-5263-4d35-97dc-6db5b0335989"
}
@@ -1,23 +1,23 @@
{
"id" : "544c72c2-de8a-407d-a319-b7c04a8c237e",
"insertionIndex" : 31,
"name" : "deployments_text-davinci-003_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"prompt\":[\"You are an action item extractor. You will be given chat history and need to make note of action items mentioned in the chat.\\nExtract action items from the content if there are any. If there are no action, return nothing. If a single field is missing, use an empty string.\\nReturn the action items in json.\\n\\nPossible statuses for action items are: Open, Closed, In Progress.\\n\\nEXAMPLE INPUT WITH ACTION ITEMS:\\n\\nJohn Doe said: \\\"I will record a demo for the new feature by Friday\\\"\\nI said: \\\"Great, thanks John. We may not use all of it but it's good to get it out there.\\\"\\n\\nEXAMPLE OUTPUT:\\n{\\n \\\"actionItems\\\": [\\n {\\n \\\"owner\\\": \\\"John Doe\\\",\\n \\\"actionItem\\\": \\\"Record a demo for the new feature\\\",\\n \\\"dueDate\\\": \\\"Friday\\\",\\n \\\"status\\\": \\\"Open\\\",\\n \\\"notes\\\": \\\"\\n }\\n ]\\n}\\n\\nEXAMPLE INPUT WITHOUT ACTION ITEMS:\\n\\nJohn Doe said: \\\"Hey I'm going to the store, do you need anything?\\\"\\nI said: \\\"No thanks, I'm good.\\\"\\n\\nEXAMPLE OUTPUT:\\n{\\n \\\"action_items\\\": []\\n}\\n\\nCONTENT STARTS HERE.\\n\\nJohn: Hello, how are you?\\nJane: I'm fine, thanks. How are you?\\nJohn: I'm doing well, writing some example code.\\nJane: That's great! I'm writing some example code too.\\nJohn: What are you writing?\\nJane: I'm writing a chatbot.\\nJohn: That's cool. I'm writing a chatbot too.\\nJane: What language are you writing it in?\\nJohn: I'm writing it in C#.\\nJane: I'm writing it in Python.\\nJohn: That's cool. I need to learn Python.\\nJane: I need to learn C#.\\nJohn: Can I try out your chatbot?\\nJane: Sure, here's the link.\\nJohn: Thanks!\\nJane: You're welcome.\\nJane: Look at this poem my chatbot wrote:\\nJane: Roses are red\\nJane: Violets are blue\\nJane: I'm writing a chatbot\\nJane: What about you?\\nJohn: That's cool. Let me see if mine will write a poem, too.\\nJohn: Here's a poem my chatbot wrote:\\nJohn: The singularity of the universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: Looks like I need to improve mine, oh well.\\nJane: You might want to try using a different model.\\nJane: I'm using the GPT-3 model.\\nJohn: I'm using the GPT-2 model. That makes sense.\\nJohn: Here is a new poem after updating the model.\\nJohn: The universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: Yikes, it's really stuck isn't it. Would you help me debug my code?\\nJane: Sure, what's the problem?\\nJohn: I'm not sure. I think it's a bug in the code.\\nJane: I'll take a look.\\nJane: I think I found the problem.\\nJane: It looks like you're not passing the right parameters to the model.\\nJohn: Thanks for the help!\\nJane: I'm now writing a bot to summarize conversations. I want to make sure it works when the conversation is long.\\nJohn: So you need to keep talking with me to generate a long conversation?\\nJane: Yes, that's right.\\nJohn: Ok, I'll keep talking. What should we talk about?\\nJane: I don't know, what do you want to talk about?\\nJohn: I don't know, it's nice how CoPilot is doing most of the talking for us. But it definitely gets stuck sometimes.\\nJane: I agree, it's nice that CoPilot is doing most of the talking for us.\\nJane: But it definitely gets stuck sometimes.\\nJohn: Do you know how long it needs to be?\\nJane: I think the max length is 1024 tokens. Which is approximately 1024*4= 4096 characters.\\nJohn: That's a lot of characters.\\nJane: Yes, it is.\\nJohn: I'm not sure how much longer I can keep talking.\\n\\nCONTENT STOPS HERE.\\n\\nOUTPUT:\\n\"],\"max_tokens\":1024,\"temperature\":0.1,\"top_p\":0.5,\"logit_bias\":{},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"best_of\":1,\"model\":\"text-davinci-003\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/text-davinci-003/completions?api-version=2023-12-01-preview"
},
"response" : {
"body" : "{\"id\":\"cmpl-xxx\",\"object\":\"text_completion\",\"created\":1707252983,\"model\":\"text-davinci-003\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"text\":\"ee5e62b0-d339-4171-b42a-664a5eb77685\",\"index\":0,\"finish_reason\":\"stop\",\"logprobs\":null,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":998,\"completion_tokens\":167,\"total_tokens\":1165}}",
"headers" : {},
"status" : 200
},
"uuid" : "544c72c2-de8a-407d-a319-b7c04a8c237e"
"id": "544c72c2-de8a-407d-a319-b7c04a8c237e",
"insertionIndex": 31,
"name": "deployments_text-davinci-003_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"prompt\":[\"You are an action item extractor. You will be given chat history and need to make note of action items mentioned in the chat.\\nExtract action items from the content if there are any. If there are no action, return nothing. If a single field is missing, use an empty string.\\nReturn the action items in json.\\n\\nPossible statuses for action items are: Open, Closed, In Progress.\\n\\nEXAMPLE INPUT WITH ACTION ITEMS:\\n\\nJohn Doe said: \\\"I will record a demo for the new feature by Friday\\\"\\nI said: \\\"Great, thanks John. We may not use all of it but it's good to get it out there.\\\"\\n\\nEXAMPLE OUTPUT:\\n{\\n \\\"actionItems\\\": [\\n {\\n \\\"owner\\\": \\\"John Doe\\\",\\n \\\"actionItem\\\": \\\"Record a demo for the new feature\\\",\\n \\\"dueDate\\\": \\\"Friday\\\",\\n \\\"status\\\": \\\"Open\\\",\\n \\\"notes\\\": \\\"\\n }\\n ]\\n}\\n\\nEXAMPLE INPUT WITHOUT ACTION ITEMS:\\n\\nJohn Doe said: \\\"Hey I'm going to the store, do you need anything?\\\"\\nI said: \\\"No thanks, I'm good.\\\"\\n\\nEXAMPLE OUTPUT:\\n{\\n \\\"action_items\\\": []\\n}\\n\\nCONTENT STARTS HERE.\\n\\nJohn: Hello, how are you?\\nJane: I'm fine, thanks. How are you?\\nJohn: I'm doing well, writing some example code.\\nJane: That's great! I'm writing some example code too.\\nJohn: What are you writing?\\nJane: I'm writing a chatbot.\\nJohn: That's cool. I'm writing a chatbot too.\\nJane: What language are you writing it in?\\nJohn: I'm writing it in C#.\\nJane: I'm writing it in Python.\\nJohn: That's cool. I need to learn Python.\\nJane: I need to learn C#.\\nJohn: Can I try out your chatbot?\\nJane: Sure, here's the link.\\nJohn: Thanks!\\nJane: You're welcome.\\nJane: Look at this poem my chatbot wrote:\\nJane: Roses are red\\nJane: Violets are blue\\nJane: I'm writing a chatbot\\nJane: What about you?\\nJohn: That's cool. Let me see if mine will write a poem, too.\\nJohn: Here's a poem my chatbot wrote:\\nJohn: The singularity of the universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: Looks like I need to improve mine, oh well.\\nJane: You might want to try using a different model.\\nJane: I'm using the GPT-3 model.\\nJohn: I'm using the GPT-2 model. That makes sense.\\nJohn: Here is a new poem after updating the model.\\nJohn: The universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: Yikes, it's really stuck isn't it. Would you help me debug my code?\\nJane: Sure, what's the problem?\\nJohn: I'm not sure. I think it's a bug in the code.\\nJane: I'll take a look.\\nJane: I think I found the problem.\\nJane: It looks like you're not passing the right parameters to the model.\\nJohn: Thanks for the help!\\nJane: I'm now writing a bot to summarize conversations. I want to make sure it works when the conversation is long.\\nJohn: So you need to keep talking with me to generate a long conversation?\\nJane: Yes, that's right.\\nJohn: Ok, I'll keep talking. What should we talk about?\\nJane: I don't know, what do you want to talk about?\\nJohn: I don't know, it's nice how CoPilot is doing most of the talking for us. But it definitely gets stuck sometimes.\\nJane: I agree, it's nice that CoPilot is doing most of the talking for us.\\nJane: But it definitely gets stuck sometimes.\\nJohn: Do you know how long it needs to be?\\nJane: I think the max length is 1024 tokens. Which is approximately 1024*4= 4096 characters.\\nJohn: That's a lot of characters.\\nJane: Yes, it is.\\nJohn: I'm not sure how much longer I can keep talking.\\n\\nCONTENT STOPS HERE.\\n\\nOUTPUT:\\n\"],\"max_tokens\":1024,\"temperature\":0.1,\"top_p\":0.5,\"logit_bias\":{},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"best_of\":1,\"model\":\"text-davinci-003\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/text-davinci-003/completions?api-version=2023-12-01-preview"
},
"response": {
"body": "{\"id\":\"cmpl-xxx\",\"object\":\"text_completion\",\"created\":1707252983,\"model\":\"text-davinci-003\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"text\":\"ee5e62b0-d339-4171-b42a-664a5eb77685\",\"index\":0,\"finish_reason\":\"stop\",\"logprobs\":null,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":998,\"completion_tokens\":167,\"total_tokens\":1165}}",
"headers": {},
"status": 200
},
"uuid": "544c72c2-de8a-407d-a319-b7c04a8c237e"
}
@@ -1,26 +1,26 @@
{
"id" : "7441c9cd-22ef-41a0-8c0b-f050326ca99c",
"insertionIndex" : 9,
"name" : "deployments_text-davinci-003_completions",
"newScenarioState" : "scenario-3-deployments-text-davinci-003-completions-2",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"prompt\":[\"Hello AI, what can you do for me?\"],\"max_tokens\":256,\"temperature\":1.0,\"top_p\":1.0,\"logit_bias\":{},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"best_of\":1,\"model\":\"text-davinci-003\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/text-davinci-003/completions?api-version=2023-12-01-preview"
},
"requiredScenarioState" : "Started",
"response" : {
"body" : "{\"id\":\"cmpl-xxx\",\"object\":\"text_completion\",\"created\":1707253052,\"model\":\"text-davinci-003\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"text\":\"50ea41ad-bd16-4241-bb54-c98e091dac99\",\"index\":0,\"finish_reason\":\"stop\",\"logprobs\":null,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":10,\"completion_tokens\":35,\"total_tokens\":45}}",
"headers" : {},
"status" : 200
},
"scenarioName" : "scenario-3-deployments-text-davinci-003-completions",
"uuid" : "7441c9cd-22ef-41a0-8c0b-f050326ca99c"
"id": "7441c9cd-22ef-41a0-8c0b-f050326ca99c",
"insertionIndex": 9,
"name": "deployments_text-davinci-003_completions",
"newScenarioState": "scenario-3-deployments-text-davinci-003-completions-2",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"prompt\":[\"Hello AI, what can you do for me?\"],\"max_tokens\":256,\"temperature\":1.0,\"top_p\":1.0,\"logit_bias\":{},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"best_of\":1,\"model\":\"text-davinci-003\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/text-davinci-003/completions?api-version=2023-12-01-preview"
},
"requiredScenarioState": "Started",
"response": {
"body": "{\"id\":\"cmpl-xxx\",\"object\":\"text_completion\",\"created\":1707253052,\"model\":\"text-davinci-003\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"text\":\"50ea41ad-bd16-4241-bb54-c98e091dac99\",\"index\":0,\"finish_reason\":\"stop\",\"logprobs\":null,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":10,\"completion_tokens\":35,\"total_tokens\":45}}",
"headers": {},
"status": 200
},
"scenarioName": "scenario-3-deployments-text-davinci-003-completions",
"uuid": "7441c9cd-22ef-41a0-8c0b-f050326ca99c"
}
@@ -1,23 +1,23 @@
{
"id" : "7718fb6b-1cae-4420-8e34-126c14d00539",
"insertionIndex" : 29,
"name" : "deployments_text-davinci-003_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"prompt\":[\"Analyze the following extract taken from a conversation transcript and extract key topics.\\n- Topics only worth remembering.\\n- Be brief. Short phrases.\\n- Can use broken English.\\n- Conciseness is very important.\\n- Topics can include names of memories you want to recall.\\n- NO LONG SENTENCES. SHORT PHRASES.\\n- Return in JSON\\n[Input]\\nMy name is Macbeth. I used to be King of Scotland, but I died. My wife's name is Lady Macbeth and we were married for 15 years. We had no children. Our beloved dog Toby McDuff was a famous hunter of rats in the forest.\\nMy tragic story was immortalized by Shakespeare in a play.\\n[Output]\\n{\\n \\\"topics\\\": [\\n \\\"Macbeth\\\",\\n \\\"King of Scotland\\\",\\n \\\"Lady Macbeth\\\",\\n \\\"Dog\\\",\\n \\\"Toby McDuff\\\",\\n \\\"Shakespeare\\\",\\n \\\"Play\\\",\\n \\\"Tragedy\\\"\\n ]\\n}\\n+++++\\n[Input]\\nJohn: Hello, how are you?\\nJane: I'm fine, thanks. How are you?\\nJohn: I'm doing well, writing some example code.\\nJane: That's great! I'm writing some example code too.\\nJohn: What are you writing?\\nJane: I'm writing a chatbot.\\nJohn: That's cool. I'm writing a chatbot too.\\nJane: What language are you writing it in?\\nJohn: I'm writing it in C#.\\nJane: I'm writing it in Python.\\nJohn: That's cool. I need to learn Python.\\nJane: I need to learn C#.\\nJohn: Can I try out your chatbot?\\nJane: Sure, here's the link.\\nJohn: Thanks!\\nJane: You're welcome.\\nJane: Look at this poem my chatbot wrote:\\nJane: Roses are red\\nJane: Violets are blue\\nJane: I'm writing a chatbot\\nJane: What about you?\\nJohn: That's cool. Let me see if mine will write a poem, too.\\nJohn: Here's a poem my chatbot wrote:\\nJohn: The singularity of the universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: Looks like I need to improve mine, oh well.\\nJane: You might want to try using a different model.\\nJane: I'm using the GPT-3 model.\\nJohn: I'm using the GPT-2 model. That makes sense.\\nJohn: Here is a new poem after updating the model.\\nJohn: The universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: Yikes, it's really stuck isn't it. Would you help me debug my code?\\nJane: Sure, what's the problem?\\nJohn: I'm not sure. I think it's a bug in the code.\\nJane: I'll take a look.\\nJane: I think I found the problem.\\nJane: It looks like you're not passing the right parameters to the model.\\nJohn: Thanks for the help!\\nJane: I'm now writing a bot to summarize conversations. I want to make sure it works when the conversation is long.\\nJohn: So you need to keep talking with me to generate a long conversation?\\nJane: Yes, that's right.\\nJohn: Ok, I'll keep talking. What should we talk about?\\nJane: I don't know, what do you want to talk about?\\nJohn: I don't know, it's nice how CoPilot is doing most of the talking for us. But it definitely gets stuck sometimes.\\nJane: I agree, it's nice that CoPilot is doing most of the talking for us.\\nJane: But it definitely gets stuck sometimes.\\nJohn: Do you know how long it needs to be?\\nJane: I think the max length is 1024 tokens. Which is approximately 1024*4= 4096 characters.\\nJohn: That's a lot of characters.\\nJane: Yes, it is.\\nJohn: I'm not sure how much longer I can keep talking.\\n[Output]\"],\"max_tokens\":1024,\"temperature\":0.1,\"top_p\":0.5,\"logit_bias\":{},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"best_of\":1,\"model\":\"text-davinci-003\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/text-davinci-003/completions?api-version=2023-12-01-preview"
},
"response" : {
"body" : "{\"id\":\"cmpl-xxx\",\"object\":\"text_completion\",\"created\":1707252988,\"model\":\"text-davinci-003\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"text\":\"527e770d-c106-4b6d-8595-f584b0532d75\",\"index\":0,\"finish_reason\":\"stop\",\"logprobs\":null,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":927,\"completion_tokens\":77,\"total_tokens\":1004}}",
"headers" : {},
"status" : 200
},
"uuid" : "7718fb6b-1cae-4420-8e34-126c14d00539"
"id": "7718fb6b-1cae-4420-8e34-126c14d00539",
"insertionIndex": 29,
"name": "deployments_text-davinci-003_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"prompt\":[\"Analyze the following extract taken from a conversation transcript and extract key topics.\\n- Topics only worth remembering.\\n- Be brief. Short phrases.\\n- Can use broken English.\\n- Conciseness is very important.\\n- Topics can include names of memories you want to recall.\\n- NO LONG SENTENCES. SHORT PHRASES.\\n- Return in JSON\\n[Input]\\nMy name is Macbeth. I used to be King of Scotland, but I died. My wife's name is Lady Macbeth and we were married for 15 years. We had no children. Our beloved dog Toby McDuff was a famous hunter of rats in the forest.\\nMy tragic story was immortalized by Shakespeare in a play.\\n[Output]\\n{\\n \\\"topics\\\": [\\n \\\"Macbeth\\\",\\n \\\"King of Scotland\\\",\\n \\\"Lady Macbeth\\\",\\n \\\"Dog\\\",\\n \\\"Toby McDuff\\\",\\n \\\"Shakespeare\\\",\\n \\\"Play\\\",\\n \\\"Tragedy\\\"\\n ]\\n}\\n+++++\\n[Input]\\nJohn: Hello, how are you?\\nJane: I'm fine, thanks. How are you?\\nJohn: I'm doing well, writing some example code.\\nJane: That's great! I'm writing some example code too.\\nJohn: What are you writing?\\nJane: I'm writing a chatbot.\\nJohn: That's cool. I'm writing a chatbot too.\\nJane: What language are you writing it in?\\nJohn: I'm writing it in C#.\\nJane: I'm writing it in Python.\\nJohn: That's cool. I need to learn Python.\\nJane: I need to learn C#.\\nJohn: Can I try out your chatbot?\\nJane: Sure, here's the link.\\nJohn: Thanks!\\nJane: You're welcome.\\nJane: Look at this poem my chatbot wrote:\\nJane: Roses are red\\nJane: Violets are blue\\nJane: I'm writing a chatbot\\nJane: What about you?\\nJohn: That's cool. Let me see if mine will write a poem, too.\\nJohn: Here's a poem my chatbot wrote:\\nJohn: The singularity of the universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: Looks like I need to improve mine, oh well.\\nJane: You might want to try using a different model.\\nJane: I'm using the GPT-3 model.\\nJohn: I'm using the GPT-2 model. That makes sense.\\nJohn: Here is a new poem after updating the model.\\nJohn: The universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: Yikes, it's really stuck isn't it. Would you help me debug my code?\\nJane: Sure, what's the problem?\\nJohn: I'm not sure. I think it's a bug in the code.\\nJane: I'll take a look.\\nJane: I think I found the problem.\\nJane: It looks like you're not passing the right parameters to the model.\\nJohn: Thanks for the help!\\nJane: I'm now writing a bot to summarize conversations. I want to make sure it works when the conversation is long.\\nJohn: So you need to keep talking with me to generate a long conversation?\\nJane: Yes, that's right.\\nJohn: Ok, I'll keep talking. What should we talk about?\\nJane: I don't know, what do you want to talk about?\\nJohn: I don't know, it's nice how CoPilot is doing most of the talking for us. But it definitely gets stuck sometimes.\\nJane: I agree, it's nice that CoPilot is doing most of the talking for us.\\nJane: But it definitely gets stuck sometimes.\\nJohn: Do you know how long it needs to be?\\nJane: I think the max length is 1024 tokens. Which is approximately 1024*4= 4096 characters.\\nJohn: That's a lot of characters.\\nJane: Yes, it is.\\nJohn: I'm not sure how much longer I can keep talking.\\n[Output]\"],\"max_tokens\":1024,\"temperature\":0.1,\"top_p\":0.5,\"logit_bias\":{},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"best_of\":1,\"model\":\"text-davinci-003\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/text-davinci-003/completions?api-version=2023-12-01-preview"
},
"response": {
"body": "{\"id\":\"cmpl-xxx\",\"object\":\"text_completion\",\"created\":1707252988,\"model\":\"text-davinci-003\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"text\":\"527e770d-c106-4b6d-8595-f584b0532d75\",\"index\":0,\"finish_reason\":\"stop\",\"logprobs\":null,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":927,\"completion_tokens\":77,\"total_tokens\":1004}}",
"headers": {},
"status": 200
},
"uuid": "7718fb6b-1cae-4420-8e34-126c14d00539"
}
@@ -1,23 +1,23 @@
{
"id" : "857195c1-97b9-4118-8c05-d25d0020f8e2",
"insertionIndex" : 35,
"name" : "deployments_text-davinci-003_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"prompt\":[\"Translate this date 1970-01-01 to French format\"],\"max_tokens\":100,\"temperature\":1.0,\"top_p\":1.0,\"logit_bias\":{},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"best_of\":1,\"model\":\"text-davinci-003\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/text-davinci-003/completions?api-version=2023-12-01-preview"
},
"response" : {
"body" : "{\"id\":\"cmpl-xxx\",\"object\":\"text_completion\",\"created\":1707252976,\"model\":\"text-davinci-003\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"text\":\"5cfcf9bb-5adc-43ab-ac46-80009b0e3cf9\",\"index\":0,\"finish_reason\":\"stop\",\"logprobs\":null,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":12,\"completion_tokens\":7,\"total_tokens\":19}}",
"headers" : {},
"status" : 200
},
"uuid" : "857195c1-97b9-4118-8c05-d25d0020f8e2"
"id": "857195c1-97b9-4118-8c05-d25d0020f8e2",
"insertionIndex": 35,
"name": "deployments_text-davinci-003_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"prompt\":[\"Translate this date 1970-01-01 to French format\"],\"max_tokens\":100,\"temperature\":1.0,\"top_p\":1.0,\"logit_bias\":{},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"best_of\":1,\"model\":\"text-davinci-003\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/text-davinci-003/completions?api-version=2023-12-01-preview"
},
"response": {
"body": "{\"id\":\"cmpl-xxx\",\"object\":\"text_completion\",\"created\":1707252976,\"model\":\"text-davinci-003\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"text\":\"5cfcf9bb-5adc-43ab-ac46-80009b0e3cf9\",\"index\":0,\"finish_reason\":\"stop\",\"logprobs\":null,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":12,\"completion_tokens\":7,\"total_tokens\":19}}",
"headers": {},
"status": 200
},
"uuid": "857195c1-97b9-4118-8c05-d25d0020f8e2"
}
@@ -1,23 +1,23 @@
{
"id" : "85f3675c-e404-4138-96c2-e49d4521e4f6",
"insertionIndex" : 36,
"name" : "deployments_text-davinci-003_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"prompt\":[\" Generate a creative reason or excuse for the given event.\\n Be creative and be funny. Let your imagination run wild.\\n\\n Event: I am running late.\\n Excuse: I was being held ransom by giraffe gangsters.\\n\\n Event: I haven't been to the gym for a year\\n Excuse: I've been too busy training my pet dragon.\\n\\n Event: sorry I forgot your birthday\\n\"],\"max_tokens\":100,\"temperature\":0.4,\"top_p\":1.0,\"logit_bias\":{},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"best_of\":1,\"model\":\"text-davinci-003\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/text-davinci-003/completions?api-version=2023-12-01-preview"
},
"response" : {
"body" : "{\"id\":\"cmpl-xxx\",\"object\":\"text_completion\",\"created\":1707252976,\"model\":\"text-davinci-003\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"text\":\"936e5f54-9693-4a66-bd9d-96a9fa72d314\",\"index\":0,\"finish_reason\":\"stop\",\"logprobs\":null,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":91,\"completion_tokens\":14,\"total_tokens\":105}}",
"headers" : {},
"status" : 200
},
"uuid" : "85f3675c-e404-4138-96c2-e49d4521e4f6"
"id": "85f3675c-e404-4138-96c2-e49d4521e4f6",
"insertionIndex": 36,
"name": "deployments_text-davinci-003_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"prompt\":[\" Generate a creative reason or excuse for the given event.\\n Be creative and be funny. Let your imagination run wild.\\n\\n Event: I am running late.\\n Excuse: I was being held ransom by giraffe gangsters.\\n\\n Event: I haven't been to the gym for a year\\n Excuse: I've been too busy training my pet dragon.\\n\\n Event: sorry I forgot your birthday\\n\"],\"max_tokens\":100,\"temperature\":0.4,\"top_p\":1.0,\"logit_bias\":{},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"best_of\":1,\"model\":\"text-davinci-003\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/text-davinci-003/completions?api-version=2023-12-01-preview"
},
"response": {
"body": "{\"id\":\"cmpl-xxx\",\"object\":\"text_completion\",\"created\":1707252976,\"model\":\"text-davinci-003\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"text\":\"936e5f54-9693-4a66-bd9d-96a9fa72d314\",\"index\":0,\"finish_reason\":\"stop\",\"logprobs\":null,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":91,\"completion_tokens\":14,\"total_tokens\":105}}",
"headers": {},
"status": 200
},
"uuid": "85f3675c-e404-4138-96c2-e49d4521e4f6"
}
@@ -1,23 +1,23 @@
{
"id" : "990e9efb-2d61-424d-bbf6-a68e2d25552f",
"insertionIndex" : 34,
"name" : "deployments_text-davinci-003_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"prompt\":[\"Today is: 2021-09-01\\nCurrent time is: 12:00:00\\n\\nAnswer to the following questions using JSON syntax, including the data used.\\n Is it morning, afternoon, evening, or night (morning/afternoon/evening/night)?\\n Is it weekend time (weekend/not weekend)?\\n\"],\"max_tokens\":100,\"temperature\":1.0,\"top_p\":1.0,\"logit_bias\":{},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"best_of\":1,\"model\":\"text-davinci-003\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/text-davinci-003/completions?api-version=2023-12-01-preview"
},
"response" : {
"body" : "{\"id\":\"cmpl-xxx\",\"object\":\"text_completion\",\"created\":1707252977,\"model\":\"text-davinci-003\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"text\":\"c0c8de7b-5fdf-43ff-a261-380cbf4be59e\",\"index\":0,\"finish_reason\":\"stop\",\"logprobs\":null,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":71,\"completion_tokens\":44,\"total_tokens\":115}}",
"headers" : {},
"status" : 200
},
"uuid" : "990e9efb-2d61-424d-bbf6-a68e2d25552f"
"id": "990e9efb-2d61-424d-bbf6-a68e2d25552f",
"insertionIndex": 34,
"name": "deployments_text-davinci-003_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"prompt\":[\"Today is: 2021-09-01\\nCurrent time is: 12:00:00\\n\\nAnswer to the following questions using JSON syntax, including the data used.\\n Is it morning, afternoon, evening, or night (morning/afternoon/evening/night)?\\n Is it weekend time (weekend/not weekend)?\\n\"],\"max_tokens\":100,\"temperature\":1.0,\"top_p\":1.0,\"logit_bias\":{},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"best_of\":1,\"model\":\"text-davinci-003\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/text-davinci-003/completions?api-version=2023-12-01-preview"
},
"response": {
"body": "{\"id\":\"cmpl-xxx\",\"object\":\"text_completion\",\"created\":1707252977,\"model\":\"text-davinci-003\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"text\":\"c0c8de7b-5fdf-43ff-a261-380cbf4be59e\",\"index\":0,\"finish_reason\":\"stop\",\"logprobs\":null,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":71,\"completion_tokens\":44,\"total_tokens\":115}}",
"headers": {},
"status": 200
},
"uuid": "990e9efb-2d61-424d-bbf6-a68e2d25552f"
}
@@ -1,23 +1,23 @@
{
"id" : "a29ad1f1-2423-4dbf-a127-fd2c93998fcd",
"insertionIndex" : 28,
"name" : "deployments_text-davinci-003_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"prompt\":[\"Analyze the following extract taken from a conversation transcript and extract key topics.\\n- Topics only worth remembering.\\n- Be brief. Short phrases.\\n- Can use broken English.\\n- Conciseness is very important.\\n- Topics can include names of memories you want to recall.\\n- NO LONG SENTENCES. SHORT PHRASES.\\n- Return in JSON\\n[Input]\\nMy name is Macbeth. I used to be King of Scotland, but I died. My wife's name is Lady Macbeth and we were married for 15 years. We had no children. Our beloved dog Toby McDuff was a famous hunter of rats in the forest.\\nMy tragic story was immortalized by Shakespeare in a play.\\n[Output]\\n{\\n \\\"topics\\\": [\\n \\\"Macbeth\\\",\\n \\\"King of Scotland\\\",\\n \\\"Lady Macbeth\\\",\\n \\\"Dog\\\",\\n \\\"Toby McDuff\\\",\\n \\\"Shakespeare\\\",\\n \\\"Play\\\",\\n \\\"Tragedy\\\"\\n ]\\n}\\n+++++\\n[Input]\\nJane: I think we're almost there. Let me check.\\nJane: I have some bad news, we're only half way there.\\nJohn: Oh no, I'm not sure I can keep going. I'm getting tired.\\nJane: I'm getting tired too.\\nJohn: Maybe there is a large piece of text we can use to generate a long conversation.\\nJane: That's a good idea. Let me see if I can find one. Maybe Lorem Ipsum?\\nJohn: Yeah, that's a good idea.\\nJane: I found a Lorem Ipsum generator.\\nJane: Here's a 4096 character Lorem Ipsum text:\\nJane: Lorem ipsum dolor sit amet, con\\nJane: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed euismod, nunc sit amet aliquam\\nJane: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed euismod, nunc sit amet aliquam\\nJane: Darn, it's just repeating stuf now.\\nJohn: I think we're done.\\nJane: We're not though! We need like 1500 more characters.\\nJohn: Oh Cananda, our home and native land.\\nJane: True patriot love in all thy sons command.\\nJohn: With glowing hearts we see thee rise.\\nJane: The True North strong and free.\\nJohn: From far and wide, O Canada, we stand on guard for thee.\\nJane: God keep our land glorious and free.\\nJohn: O Canada, we stand on guard for thee.\\nJane: O Canada, we stand on guard for thee.\\nJane: That was fun, thank you. Let me check now.\\nJane: I think we need about 600 more characters.\\nJohn: Oh say can you see?\\nJane: By the dawn's early light.\\nJohn: What so proudly we hailed.\\nJane: At the twilight's last gleaming.\\nJohn: Whose broad stripes and bright stars.\\nJane: Through the perilous fight.\\nJohn: O'er the ramparts we watched.\\nJane: Were so gallantly streaming.\\nJohn: And the rockets' red glare.\\nJane: The bombs bursting in air.\\nJohn: Gave proof through the night.\\nJane: That our flag was still there.\\nJohn: Oh say does that star-spangled banner yet wave.\\nJane: O'er the land of the free.\\nJohn: And the home of the brave.\\nJane: Are you a Seattle Kraken Fan?\\nJohn: Yes, I am. I love going to the games.\\nJane: I'm a Seattle Kraken Fan too. Who is your favorite player?\\nJohn: I like watching all the players, but I think my favorite is Matty Beniers.\\nJane: Yeah, he's a great player. I like watching him too. I also like watching Jaden Schwartz.\\nJohn: Adam Larsson is another good one. The big cat!\\nJane: WE MADE IT! It's long enough. Thank you!\\nJohn: Can you automate generating long text next time?\\nJane: I will.\\nJohn: You're welcome. I'm glad we could help. Goodbye!\\nJane: Goodbye!\\n[Output]\"],\"max_tokens\":1024,\"temperature\":0.1,\"top_p\":0.5,\"logit_bias\":{},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"best_of\":1,\"model\":\"text-davinci-003\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/text-davinci-003/completions?api-version=2023-12-01-preview"
},
"response" : {
"body" : "{\"id\":\"cmpl-xxx\",\"object\":\"text_completion\",\"created\":1707252990,\"model\":\"text-davinci-003\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"text\":\"18733ff5-6af1-4bfc-98b9-a6e7cc1a5005\",\"index\":0,\"finish_reason\":\"stop\",\"logprobs\":null,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":947,\"completion_tokens\":56,\"total_tokens\":1003}}",
"headers" : {},
"status" : 200
},
"uuid" : "a29ad1f1-2423-4dbf-a127-fd2c93998fcd"
"id": "a29ad1f1-2423-4dbf-a127-fd2c93998fcd",
"insertionIndex": 28,
"name": "deployments_text-davinci-003_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"prompt\":[\"Analyze the following extract taken from a conversation transcript and extract key topics.\\n- Topics only worth remembering.\\n- Be brief. Short phrases.\\n- Can use broken English.\\n- Conciseness is very important.\\n- Topics can include names of memories you want to recall.\\n- NO LONG SENTENCES. SHORT PHRASES.\\n- Return in JSON\\n[Input]\\nMy name is Macbeth. I used to be King of Scotland, but I died. My wife's name is Lady Macbeth and we were married for 15 years. We had no children. Our beloved dog Toby McDuff was a famous hunter of rats in the forest.\\nMy tragic story was immortalized by Shakespeare in a play.\\n[Output]\\n{\\n \\\"topics\\\": [\\n \\\"Macbeth\\\",\\n \\\"King of Scotland\\\",\\n \\\"Lady Macbeth\\\",\\n \\\"Dog\\\",\\n \\\"Toby McDuff\\\",\\n \\\"Shakespeare\\\",\\n \\\"Play\\\",\\n \\\"Tragedy\\\"\\n ]\\n}\\n+++++\\n[Input]\\nJane: I think we're almost there. Let me check.\\nJane: I have some bad news, we're only half way there.\\nJohn: Oh no, I'm not sure I can keep going. I'm getting tired.\\nJane: I'm getting tired too.\\nJohn: Maybe there is a large piece of text we can use to generate a long conversation.\\nJane: That's a good idea. Let me see if I can find one. Maybe Lorem Ipsum?\\nJohn: Yeah, that's a good idea.\\nJane: I found a Lorem Ipsum generator.\\nJane: Here's a 4096 character Lorem Ipsum text:\\nJane: Lorem ipsum dolor sit amet, con\\nJane: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed euismod, nunc sit amet aliquam\\nJane: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed euismod, nunc sit amet aliquam\\nJane: Darn, it's just repeating stuf now.\\nJohn: I think we're done.\\nJane: We're not though! We need like 1500 more characters.\\nJohn: Oh Cananda, our home and native land.\\nJane: True patriot love in all thy sons command.\\nJohn: With glowing hearts we see thee rise.\\nJane: The True North strong and free.\\nJohn: From far and wide, O Canada, we stand on guard for thee.\\nJane: God keep our land glorious and free.\\nJohn: O Canada, we stand on guard for thee.\\nJane: O Canada, we stand on guard for thee.\\nJane: That was fun, thank you. Let me check now.\\nJane: I think we need about 600 more characters.\\nJohn: Oh say can you see?\\nJane: By the dawn's early light.\\nJohn: What so proudly we hailed.\\nJane: At the twilight's last gleaming.\\nJohn: Whose broad stripes and bright stars.\\nJane: Through the perilous fight.\\nJohn: O'er the ramparts we watched.\\nJane: Were so gallantly streaming.\\nJohn: And the rockets' red glare.\\nJane: The bombs bursting in air.\\nJohn: Gave proof through the night.\\nJane: That our flag was still there.\\nJohn: Oh say does that star-spangled banner yet wave.\\nJane: O'er the land of the free.\\nJohn: And the home of the brave.\\nJane: Are you a Seattle Kraken Fan?\\nJohn: Yes, I am. I love going to the games.\\nJane: I'm a Seattle Kraken Fan too. Who is your favorite player?\\nJohn: I like watching all the players, but I think my favorite is Matty Beniers.\\nJane: Yeah, he's a great player. I like watching him too. I also like watching Jaden Schwartz.\\nJohn: Adam Larsson is another good one. The big cat!\\nJane: WE MADE IT! It's long enough. Thank you!\\nJohn: Can you automate generating long text next time?\\nJane: I will.\\nJohn: You're welcome. I'm glad we could help. Goodbye!\\nJane: Goodbye!\\n[Output]\"],\"max_tokens\":1024,\"temperature\":0.1,\"top_p\":0.5,\"logit_bias\":{},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"best_of\":1,\"model\":\"text-davinci-003\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/text-davinci-003/completions?api-version=2023-12-01-preview"
},
"response": {
"body": "{\"id\":\"cmpl-xxx\",\"object\":\"text_completion\",\"created\":1707252990,\"model\":\"text-davinci-003\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"text\":\"18733ff5-6af1-4bfc-98b9-a6e7cc1a5005\",\"index\":0,\"finish_reason\":\"stop\",\"logprobs\":null,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":947,\"completion_tokens\":56,\"total_tokens\":1003}}",
"headers": {},
"status": 200
},
"uuid": "a29ad1f1-2423-4dbf-a127-fd2c93998fcd"
}
@@ -1,23 +1,23 @@
{
"id" : "fb3fd96e-de60-4e75-b551-493819766937",
"insertionIndex" : 33,
"name" : "deployments_text-davinci-003_completions",
"persistent" : true,
"request" : {
"bodyPatterns" : [
{
"equalToJson" : "{\"prompt\":[\"BEGIN CONTENT TO SUMMARIZE:\\nJohn: Hello, how are you?\\nJane: I'm fine, thanks. How are you?\\nJohn: I'm doing well, writing some example code.\\nJane: That's great! I'm writing some example code too.\\nJohn: What are you writing?\\nJane: I'm writing a chatbot.\\nJohn: That's cool. I'm writing a chatbot too.\\nJane: What language are you writing it in?\\nJohn: I'm writing it in C#.\\nJane: I'm writing it in Python.\\nJohn: That's cool. I need to learn Python.\\nJane: I need to learn C#.\\nJohn: Can I try out your chatbot?\\nJane: Sure, here's the link.\\nJohn: Thanks!\\nJane: You're welcome.\\nJane: Look at this poem my chatbot wrote:\\nJane: Roses are red\\nJane: Violets are blue\\nJane: I'm writing a chatbot\\nJane: What about you?\\nJohn: That's cool. Let me see if mine will write a poem, too.\\nJohn: Here's a poem my chatbot wrote:\\nJohn: The singularity of the universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: Looks like I need to improve mine, oh well.\\nJane: You might want to try using a different model.\\nJane: I'm using the GPT-3 model.\\nJohn: I'm using the GPT-2 model. That makes sense.\\nJohn: Here is a new poem after updating the model.\\nJohn: The universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: Yikes, it's really stuck isn't it. Would you help me debug my code?\\nJane: Sure, what's the problem?\\nJohn: I'm not sure. I think it's a bug in the code.\\nJane: I'll take a look.\\nJane: I think I found the problem.\\nJane: It looks like you're not passing the right parameters to the model.\\nJohn: Thanks for the help!\\nJane: I'm now writing a bot to summarize conversations. I want to make sure it works when the conversation is long.\\nJohn: So you need to keep talking with me to generate a long conversation?\\nJane: Yes, that's right.\\nJohn: Ok, I'll keep talking. What should we talk about?\\nJane: I don't know, what do you want to talk about?\\nJohn: I don't know, it's nice how CoPilot is doing most of the talking for us. But it definitely gets stuck sometimes.\\nJane: I agree, it's nice that CoPilot is doing most of the talking for us.\\nJane: But it definitely gets stuck sometimes.\\nJohn: Do you know how long it needs to be?\\nJane: I think the max length is 1024 tokens. Which is approximately 1024*4= 4096 characters.\\nJohn: That's a lot of characters.\\nJane: Yes, it is.\\nJohn: I'm not sure how much longer I can keep talking.\\n\\nEND CONTENT TO SUMMARIZE.\\n\\nSummarize the conversation in 'CONTENT TO SUMMARIZE', identifying main points of discussion and any conclusions that were reached.\\nDo not incorporate other general knowledge.\\nSummary is in plain text, in complete sentences, with no markup or tags.\\n\\nBEGIN SUMMARY:\\n\"],\"max_tokens\":1024,\"temperature\":0.1,\"top_p\":0.5,\"logit_bias\":{},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"best_of\":1,\"model\":\"text-davinci-003\"}",
"ignoreArrayOrder" : true,
"ignoreExtraElements" : true
}
],
"method" : "POST",
"url" : "//openai/deployments/text-davinci-003/completions?api-version=2023-12-01-preview"
},
"response" : {
"body" : "{\"id\":\"cmpl-xxx\",\"object\":\"text_completion\",\"created\":1707252979,\"model\":\"text-davinci-003\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"text\":\"daed202a-7933-40ce-941a-4f17954f3e8d\",\"index\":0,\"finish_reason\":\"stop\",\"logprobs\":null,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":771,\"completion_tokens\":91,\"total_tokens\":862}}",
"headers" : {},
"status" : 200
},
"uuid" : "fb3fd96e-de60-4e75-b551-493819766937"
"id": "fb3fd96e-de60-4e75-b551-493819766937",
"insertionIndex": 33,
"name": "deployments_text-davinci-003_completions",
"persistent": true,
"request": {
"bodyPatterns": [
{
"equalToJson": "{\"prompt\":[\"BEGIN CONTENT TO SUMMARIZE:\\nJohn: Hello, how are you?\\nJane: I'm fine, thanks. How are you?\\nJohn: I'm doing well, writing some example code.\\nJane: That's great! I'm writing some example code too.\\nJohn: What are you writing?\\nJane: I'm writing a chatbot.\\nJohn: That's cool. I'm writing a chatbot too.\\nJane: What language are you writing it in?\\nJohn: I'm writing it in C#.\\nJane: I'm writing it in Python.\\nJohn: That's cool. I need to learn Python.\\nJane: I need to learn C#.\\nJohn: Can I try out your chatbot?\\nJane: Sure, here's the link.\\nJohn: Thanks!\\nJane: You're welcome.\\nJane: Look at this poem my chatbot wrote:\\nJane: Roses are red\\nJane: Violets are blue\\nJane: I'm writing a chatbot\\nJane: What about you?\\nJohn: That's cool. Let me see if mine will write a poem, too.\\nJohn: Here's a poem my chatbot wrote:\\nJohn: The singularity of the universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: Looks like I need to improve mine, oh well.\\nJane: You might want to try using a different model.\\nJane: I'm using the GPT-3 model.\\nJohn: I'm using the GPT-2 model. That makes sense.\\nJohn: Here is a new poem after updating the model.\\nJohn: The universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: The universe is a mystery.\\nJohn: Yikes, it's really stuck isn't it. Would you help me debug my code?\\nJane: Sure, what's the problem?\\nJohn: I'm not sure. I think it's a bug in the code.\\nJane: I'll take a look.\\nJane: I think I found the problem.\\nJane: It looks like you're not passing the right parameters to the model.\\nJohn: Thanks for the help!\\nJane: I'm now writing a bot to summarize conversations. I want to make sure it works when the conversation is long.\\nJohn: So you need to keep talking with me to generate a long conversation?\\nJane: Yes, that's right.\\nJohn: Ok, I'll keep talking. What should we talk about?\\nJane: I don't know, what do you want to talk about?\\nJohn: I don't know, it's nice how CoPilot is doing most of the talking for us. But it definitely gets stuck sometimes.\\nJane: I agree, it's nice that CoPilot is doing most of the talking for us.\\nJane: But it definitely gets stuck sometimes.\\nJohn: Do you know how long it needs to be?\\nJane: I think the max length is 1024 tokens. Which is approximately 1024*4= 4096 characters.\\nJohn: That's a lot of characters.\\nJane: Yes, it is.\\nJohn: I'm not sure how much longer I can keep talking.\\n\\nEND CONTENT TO SUMMARIZE.\\n\\nSummarize the conversation in 'CONTENT TO SUMMARIZE', identifying main points of discussion and any conclusions that were reached.\\nDo not incorporate other general knowledge.\\nSummary is in plain text, in complete sentences, with no markup or tags.\\n\\nBEGIN SUMMARY:\\n\"],\"max_tokens\":1024,\"temperature\":0.1,\"top_p\":0.5,\"logit_bias\":{},\"user\":\"\",\"n\":1,\"presence_penalty\":0.0,\"frequency_penalty\":0.0,\"best_of\":1,\"model\":\"text-davinci-003\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": true
}
],
"method": "POST",
"url": "//openai/deployments/text-davinci-003/completions?api-version=2023-12-01-preview"
},
"response": {
"body": "{\"id\":\"cmpl-xxx\",\"object\":\"text_completion\",\"created\":1707252979,\"model\":\"text-davinci-003\",\"prompt_filter_results\":[{\"prompt_index\":0,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"choices\":[{\"text\":\"daed202a-7933-40ce-941a-4f17954f3e8d\",\"index\":0,\"finish_reason\":\"stop\",\"logprobs\":null,\"content_filter_results\":{\"hate\":{\"filtered\":false,\"severity\":\"safe\"},\"self_harm\":{\"filtered\":false,\"severity\":\"safe\"},\"sexual\":{\"filtered\":false,\"severity\":\"safe\"},\"violence\":{\"filtered\":false,\"severity\":\"safe\"}}}],\"usage\":{\"prompt_tokens\":771,\"completion_tokens\":91,\"total_tokens\":862}}",
"headers": {},
"status": 200
},
"uuid": "fb3fd96e-de60-4e75-b551-493819766937"
}
+2 -1
View File
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.connectors.web.bing;
import com.azure.core.http.HttpClient;
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.plugins.web;
import com.microsoft.semantickernel.semanticfunctions.annotations.DefineKernelFunction;
+4 -3
View File
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
@@ -662,11 +663,11 @@
<style>AOSP</style>
<reflowLongStrings>true</reflowLongStrings>
</googleJavaFormat>
-->
<licenseHeader>
<content>// Copyright (c) Microsoft. All rights reserved.</content>
</licenseHeader>
<toggleOffOn />
-->
<toggleOffOn/>
</java>
</configuration>
</plugin>
+4 -3
View File
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8" ?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.microsoft.semantic-kernel</groupId>
@@ -130,8 +131,8 @@
<encoding>${project.build.sourceEncoding}</encoding>
<showWarnings>true</showWarnings>
<compilerArgs>
<arg />
<compilerArg />
<arg/>
<compilerArg/>
</compilerArgs>
</configuration>
</plugin>
+2 -1
View File
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.microsoft.semantic-kernel</groupId>
@@ -1,10 +1,11 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.plugins;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.contextvariables.ContextVariableTypes;
import com.microsoft.semantickernel.orchestration.PromptExecutionSettings;
import com.microsoft.semantickernel.semanticfunctions.KernelFunction;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.orchestration.PromptExecutionSettings;
import com.microsoft.semantickernel.contextvariables.ContextVariableTypes;
import com.microsoft.semantickernel.semanticfunctions.annotations.DefineKernelFunction;
import com.microsoft.semantickernel.semanticfunctions.annotations.KernelFunctionParameter;
import com.microsoft.semantickernel.text.TextChunker;
@@ -60,6 +61,27 @@ public class ConversationSummaryPlugin {
.build();
}
private static Mono<String> processAsync(KernelFunction<String> func, String input,
Kernel kernel) {
List<String> lines = TextChunker.splitPlainTextLines(input, MaxTokens);
List<String> paragraphs = TextChunker.splitPlainTextParagraphs(lines, MaxTokens);
return Flux.fromIterable(paragraphs)
.concatMap(paragraph -> {
// The first parameter is the input text.
return func.invokeAsync(kernel)
.withArguments(
new KernelFunctionArguments.Builder()
.withInput(paragraph)
.build())
.withResultType(
ContextVariableTypes.getGlobalVariableTypeForClass(String.class));
})
.reduce("", (acc, next) -> {
return acc + "\n" + next.getResult();
});
}
/// <summary>
/// Given a long conversation transcript, summarize the conversation.
/// </summary>
@@ -96,25 +118,4 @@ public class ConversationSummaryPlugin {
Kernel kernel) {
return processAsync(this.conversationTopicsFunction, input, kernel);
}
private static Mono<String> processAsync(KernelFunction<String> func, String input,
Kernel kernel) {
List<String> lines = TextChunker.splitPlainTextLines(input, MaxTokens);
List<String> paragraphs = TextChunker.splitPlainTextParagraphs(lines, MaxTokens);
return Flux.fromIterable(paragraphs)
.concatMap(paragraph -> {
// The first parameter is the input text.
return func.invokeAsync(kernel)
.withArguments(
new KernelFunctionArguments.Builder()
.withInput(paragraph)
.build())
.withResultType(
ContextVariableTypes.getGlobalVariableTypeForClass(String.class));
})
.reduce("", (acc, next) -> {
return acc + "\n" + next.getResult();
});
}
}
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.plugins;
public class PromptFunctionConstants {
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import com.microsoft.semantickernel.plugins.text.TextPlugin;
@@ -3,9 +3,9 @@ package com.microsoft.semantickernel.samples.syntaxexamples;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.orchestration.FunctionResult;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.plugin.KernelPlugin;
import com.microsoft.semantickernel.plugin.KernelPluginFactory;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.semanticfunctions.annotations.DefineKernelFunction;
import com.microsoft.semantickernel.semanticfunctions.annotations.KernelFunctionParameter;
import java.util.Locale;
@@ -17,22 +17,6 @@ import reactor.core.publisher.Mono;
*/
public class Example03_Arguments {
public static class StaticTextPlugin {
@DefineKernelFunction(description = "Change all string chars to uppercase.", name = "Uppercase", returnType = "java.lang.String")
public static Mono<String> uppercase(
@KernelFunctionParameter(description = "Text to uppercase", name = "input") String text) {
return Mono.just(text.toUpperCase(Locale.ROOT));
}
@DefineKernelFunction(description = "Append the day variable", name = "appendDay", returnType = "java.lang.String")
public Mono<String> appendDay(
@KernelFunctionParameter(description = "Text to append to", name = "input") String input,
@KernelFunctionParameter(description = "Current day", name = "day") String day) {
return Mono.just(input + day);
}
}
public static void main(String[] args) {
Kernel kernel = Kernel.builder().build();
@@ -51,4 +35,20 @@ public class Example03_Arguments {
System.out.println(resultValue.getResult());
}
public static class StaticTextPlugin {
@DefineKernelFunction(description = "Change all string chars to uppercase.", name = "Uppercase", returnType = "java.lang.String")
public static Mono<String> uppercase(
@KernelFunctionParameter(description = "Text to uppercase", name = "input") String text) {
return Mono.just(text.toUpperCase(Locale.ROOT));
}
@DefineKernelFunction(description = "Append the day variable", name = "appendDay", returnType = "java.lang.String")
public Mono<String> appendDay(
@KernelFunctionParameter(description = "Text to append to", name = "input") String input,
@KernelFunctionParameter(description = "Current day", name = "day") String day) {
return Mono.just(input + day);
}
}
}
@@ -8,9 +8,9 @@ import com.azure.core.credential.KeyCredential;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.exceptions.ConfigurationException;
import com.microsoft.semantickernel.orchestration.FunctionResult;
import com.microsoft.semantickernel.orchestration.PromptExecutionSettings;
import com.microsoft.semantickernel.semanticfunctions.KernelFunction;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.orchestration.PromptExecutionSettings;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionFromPrompt;
import com.microsoft.semantickernel.services.textcompletion.TextGenerationService;
import java.time.Instant;
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import com.azure.ai.openai.OpenAIAsyncClient;
@@ -7,13 +8,13 @@ import com.azure.core.credential.KeyCredential;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.aiservices.openai.textcompletion.OpenAITextGenerationService;
import com.microsoft.semantickernel.exceptions.ConfigurationException;
import com.microsoft.semantickernel.semanticfunctions.KernelFunction;
import com.microsoft.semantickernel.orchestration.PromptExecutionSettings;
import com.microsoft.semantickernel.plugin.KernelPlugin;
import com.microsoft.semantickernel.plugin.KernelPluginFactory;
import com.microsoft.semantickernel.semanticfunctions.annotations.DefineKernelFunction;
import com.microsoft.semantickernel.semanticfunctions.KernelFunction;
import com.microsoft.semantickernel.semanticfunctions.KernelPromptTemplateFactory;
import com.microsoft.semantickernel.semanticfunctions.PromptTemplateConfig;
import com.microsoft.semantickernel.semanticfunctions.annotations.DefineKernelFunction;
import com.microsoft.semantickernel.services.textcompletion.TextGenerationService;
public class Example06_TemplateLanguage {
@@ -26,19 +27,6 @@ public class Example06_TemplateLanguage {
private static final String MODEL_ID = System.getenv()
.getOrDefault("MODEL_ID", "text-davinci-003");
public static class Time {
@DefineKernelFunction(name = "date")
public String date() {
return "2021-09-01";
}
@DefineKernelFunction(name = "time")
public String time() {
return "12:00:00";
}
}
public static void main(String[] args) throws ConfigurationException {
System.out.println("======== TemplateLanguage ========");
@@ -104,4 +92,17 @@ public class Example06_TemplateLanguage {
var result = kernel.invokeAsync(kindOfDay).block();
System.out.println(result.getResult());
}
public static class Time {
@DefineKernelFunction(name = "date")
public String date() {
return "2021-09-01";
}
@DefineKernelFunction(name = "time")
public String time() {
return "12:00:00";
}
}
}
@@ -6,18 +6,18 @@ import com.azure.ai.openai.OpenAIClientBuilder;
import com.azure.core.credential.AzureKeyCredential;
import com.azure.core.credential.KeyCredential;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
import com.microsoft.semantickernel.connectors.web.bing.BingConnector;
import com.microsoft.semantickernel.orchestration.FunctionResult;
import com.microsoft.semantickernel.semanticfunctions.KernelFunction;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.orchestration.PromptExecutionSettings;
import com.microsoft.semantickernel.plugin.KernelPluginFactory;
import com.microsoft.semantickernel.plugins.web.WebSearchEnginePlugin;
import com.microsoft.semantickernel.semanticfunctions.KernelFunction;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionFromPrompt;
import com.microsoft.semantickernel.semanticfunctions.KernelPromptTemplateFactory;
import com.microsoft.semantickernel.semanticfunctions.PromptTemplate;
import com.microsoft.semantickernel.semanticfunctions.PromptTemplateConfig;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
/// <summary>
/// The example shows how to use Bing and Google to search for current data
@@ -96,7 +96,7 @@ public class Example07_BingAndGooglePlugins {
/*
* OUTPUT:
*
*
* What's the largest building in the world?
* ----
* The Aerium near Berlin, Germany is the largest uninterrupted volume in the world, while
@@ -202,11 +202,11 @@ public class Example07_BingAndGooglePlugins {
/*
* OUTPUT:
*
*
* Who is the most followed person on TikTok right now? What's the exchange rate EUR:USD?
* ---- Fetching information from Bing...
* Information found:
*
*
* Khaby Lame is the most-followed user on TikTok. This list contains the top 50 accounts by
* number
* of followers on the Chinese social media platform TikTok, which was merged with
@@ -220,7 +220,7 @@ public class Example07_BingAndGooglePlugins {
* rate when sending money. Check send rates Convert Euro to US Dollar Convert US Dollar to
* Euro..
* ---- ANSWER:
*
*
* The most followed person on TikTok right now is Khaby Lame, with over 153 million
* followers.
* The exchange rate for EUR to USD is 1.1037097 US Dollars for 1 Euro.
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import com.azure.ai.openai.OpenAIAsyncClient;
@@ -41,7 +42,9 @@ public class Example08_RetryHandler {
String question = "How popular is the Polly library?";
KernelFunction<String> fuction = KernelFunctionFromPrompt.create(question);
KernelFunction<String> fuction = KernelFunctionFromPrompt.<String>builder()
.withTemplate(question)
.build();
try {
// Will retry 3 times with exponential backoff
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import static com.microsoft.semantickernel.contextvariables.ContextVariableTypes.convert;
@@ -8,14 +9,14 @@ import com.azure.core.credential.AzureKeyCredential;
import com.azure.core.credential.KeyCredential;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.aiservices.openai.textcompletion.OpenAITextGenerationService;
import com.microsoft.semantickernel.orchestration.FunctionResult;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.contextvariables.ContextVariable;
import com.microsoft.semantickernel.contextvariables.ContextVariableType;
import com.microsoft.semantickernel.contextvariables.ContextVariableTypeConverter;
import com.microsoft.semantickernel.contextvariables.ContextVariableTypeConverter.NoopConverter;
import com.microsoft.semantickernel.orchestration.FunctionResult;
import com.microsoft.semantickernel.plugin.KernelPlugin;
import com.microsoft.semantickernel.plugin.KernelPluginFactory;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.semanticfunctions.annotations.DefineKernelFunction;
import com.microsoft.semantickernel.semanticfunctions.annotations.KernelFunctionParameter;
import com.microsoft.semantickernel.services.textcompletion.TextGenerationService;
@@ -43,38 +44,6 @@ public class Example09_FunctionTypes {
private static final String MODEL_ID = System.getenv()
.getOrDefault("MODEL_ID", "text-davinci-003");
private static class DateTimeContextVariableTypeConverter extends
ContextVariableTypeConverter<ZonedDateTime> {
private static final List<Converter<ZonedDateTime, ?>> converters = List.of(
new DefaultConverter<>(ZonedDateTime.class, Date.class) {
@Override
public Date toObject(ZonedDateTime zonedDateTime) {
return new Date(zonedDateTime.toInstant().toEpochMilli());
}
},
new DefaultConverter<>(ZonedDateTime.class, String.class) {
@Override
public String toObject(ZonedDateTime zonedDateTime) {
return zonedDateTime.format(DateTimeFormatter.ISO_DATE_TIME);
}
});
public DateTimeContextVariableTypeConverter() {
super(
ZonedDateTime.class,
(x) -> {
if (x instanceof OffsetDateTime) {
return ((OffsetDateTime) x).toZonedDateTime();
}
return convert(x, ZonedDateTime.class);
},
zonedDateTime -> zonedDateTime.format(DateTimeFormatter.ISO_DATE_TIME),
promptString -> ZonedDateTime.parse(promptString, DateTimeFormatter.ISO_DATE_TIME),
converters);
}
}
public static void main(String[] args) throws InterruptedException {
System.out.println("======== Method Function types ========");
@@ -161,7 +130,7 @@ public class Example09_FunctionTypes {
.block();
System.out.println(result.getResult());
kernel.invokeAsync(plugin.<String>get("MultipleInputsWithVoidResult"))
result = kernel.invokeAsync(plugin.<String>get("MultipleInputsWithVoidResult"))
.withArguments(
KernelFunctionArguments
.builder()
@@ -170,7 +139,6 @@ public class Example09_FunctionTypes {
.withVariable("z", 1.5)
.build())
.block();
System.out.println(result.getResult());
result = kernel
.invokeAsync(plugin.<String>get("ComplexInputWithStringResult"))
@@ -285,6 +253,15 @@ public class Example09_FunctionTypes {
.block();
System.out.println(result9.getResult());
result = kernel.invokeAsync(plugin.get("MultipleComplexInputsWithVoidResult"))
.withArguments(
KernelFunctionArguments
.builder()
.withVariable("x", OffsetDateTime.of(1, 1, 1, 1, 1, 1, 1, ZoneOffset.UTC))
.withVariable("y", OffsetDateTime.of(1, 1, 1, 1, 1, 1, 1, ZoneOffset.UTC))
.build())
.withTypeConverter(new DateTimeContextVariableTypeConverter())
.block();
/*
* TODO: support FunctionResult
* kernel
@@ -292,7 +269,7 @@ public class Example09_FunctionTypes {
* null,
* Void.class)
* .block();
*
*
*/
/*
@@ -319,7 +296,7 @@ public class Example09_FunctionTypes {
* with Visual Basic's simplicity. It's ideal for a wide range of applications,
* emphasizing type safety, modularity, and modern programming paradigms."
* });
*
*
*/
// You can also use the kernel.Plugins collection to invoke a function
@@ -329,6 +306,38 @@ public class Example09_FunctionTypes {
.block();
}
private static class DateTimeContextVariableTypeConverter extends
ContextVariableTypeConverter<ZonedDateTime> {
private static final List<Converter<ZonedDateTime, ?>> converters = List.of(
new DefaultConverter<>(ZonedDateTime.class, Date.class) {
@Override
public Date toObject(ZonedDateTime zonedDateTime) {
return new Date(zonedDateTime.toInstant().toEpochMilli());
}
},
new DefaultConverter<>(ZonedDateTime.class, String.class) {
@Override
public String toObject(ZonedDateTime zonedDateTime) {
return zonedDateTime.format(DateTimeFormatter.ISO_DATE_TIME);
}
});
public DateTimeContextVariableTypeConverter() {
super(
ZonedDateTime.class,
(x) -> {
if (x instanceof OffsetDateTime) {
return ((OffsetDateTime) x).toZonedDateTime();
}
return convert(x, ZonedDateTime.class);
},
zonedDateTime -> zonedDateTime.format(DateTimeFormatter.ISO_DATE_TIME),
promptString -> ZonedDateTime.parse(promptString, DateTimeFormatter.ISO_DATE_TIME),
converters);
}
}
public static class LocalExamplePlugin {
/// <summary>
@@ -465,11 +474,21 @@ public class Example09_FunctionTypes {
return OffsetDateTime.of(1, 1, 1, 1, 1, 1, 1, ZoneOffset.UTC);
}
@DefineKernelFunction(name = "MultipleComplexInputsWithVoidResult")
public void MultipleComplexInputsWithVoidResult(
@KernelFunctionParameter(name = "x", type = ZonedDateTime.class) ZonedDateTime x,
@KernelFunctionParameter(name = "y", type = ZonedDateTime.class) ZonedDateTime y) {
System.out.println(
"Running {nameof(this.MultipleComplexInputsWithVoidResult)} -> input: [x = {" + x
+ "}, y = {" + y + "}]");
}
/*
* /// <summary>
* /// Example using a function to return the result of another inner function
* /// </summary>
*
*
* @DefineKernelFunction(name = "InputStringTaskWithVoidResult")
* public FunctionResult NoInputWithFunctionResult()
* {
@@ -483,7 +502,7 @@ public class Example09_FunctionTypes {
*/
/*
*
*
* /// <summary>
* /// Example using a task function to return the result of another kernel function
* /// </summary>
@@ -497,7 +516,7 @@ public class Example09_FunctionTypes {
* );
* return result;
* }
*
*
* /// <summary>
* /// Example how to inject Kernel in your function
* /// This example uses the injected kernel to invoke a plugin from within another function
@@ -514,7 +533,7 @@ public class Example09_FunctionTypes {
* );
* return summary!;
* }
*
*
* /// <summary>
* /// Example how to inject the executing KernelFunction as a parameter
* /// </summary>
@@ -529,7 +548,7 @@ public class Example09_FunctionTypes {
* );
* return result;
* }
*
*
* /// <summary>
* /// Example how to inject ILogger in your function
* /// </summary>
@@ -543,7 +562,7 @@ public class Example09_FunctionTypes {
* );
* return Task.CompletedTask;
* }
*
*
* /// <summary>
* /// Example how to inject ILoggerFactory in your function
* /// </summary>
@@ -554,13 +573,13 @@ public class Example09_FunctionTypes {
* .CreateLogger<LocalExamplePlugin>()
* .LogWarning("Running {FunctionName} -> Injected Logger",
* nameof(this.TaskInjectingLoggerWithNoResult));
*
*
* Console.WriteLine(
* $"Running {nameof(this.TaskInjectingKernelWithInputTextAndStringResult)} -> Injected Logger"
* );
* return Task.CompletedTask;
* }
*
*
* /// <summary>
* /// Example how to inject a service selector in your function and use a specific service
* /// </summary>
@@ -575,14 +594,14 @@ public class Example09_FunctionTypes {
* chatMessageContent = await chatCompletion.GetChatMessageContentAsync(new
* ChatHistory("How much is 5 + 5 ?"), executionSettings);
* }
*
*
* var result = chatMessageContent?.Content;
* Console.WriteLine(
* $"Running {nameof(this.TaskInjectingKernelWithInputTextAndStringResult)} -> Injected Kernel, KernelFunction, KernelArguments, Service Selector -> result: {result}"
* );
* return result ?? string.Empty;
* }
*
*
* /// <summary>
* /// Example how to inject CultureInfo or IFormatProvider in your function
* /// </summary>
@@ -598,7 +617,7 @@ public class Example09_FunctionTypes {
* );
* return result;
* }
*
*
* /// <summary>
* /// Example how to inject current CancellationToken in your function
* /// </summary>
@@ -612,12 +631,12 @@ public class Example09_FunctionTypes {
* );
* return result;
* }
*
*
* public override string ToString()
* {
* return "Complex type result ToString override";
* }
*
*
*/
}
}
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import com.azure.ai.openai.OpenAIAsyncClient;
@@ -6,14 +7,14 @@ import com.azure.core.credential.AzureKeyCredential;
import com.azure.core.credential.KeyCredential;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.aiservices.openai.textcompletion.OpenAITextGenerationService;
import com.microsoft.semantickernel.semanticfunctions.KernelFunction;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionMetadata;
import com.microsoft.semantickernel.orchestration.PromptExecutionSettings;
import com.microsoft.semantickernel.plugin.KernelPluginFactory;
import com.microsoft.semantickernel.plugins.text.TextPlugin;
import com.microsoft.semantickernel.semanticfunctions.KernelFunction;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionFromPrompt;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionMetadata;
import com.microsoft.semantickernel.semanticfunctions.annotations.DefineKernelFunction;
import com.microsoft.semantickernel.semanticfunctions.annotations.KernelFunctionParameter;
import com.microsoft.semantickernel.plugins.text.TextPlugin;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionFromPrompt;
import com.microsoft.semantickernel.services.textcompletion.TextGenerationService;
import java.nio.file.Path;
import java.util.Locale;
@@ -30,22 +31,6 @@ public class Example10_DescribeAllPluginsAndFunctions {
private static final String MODEL_ID = System.getenv()
.getOrDefault("MODEL_ID", "text-davinci-003");
public static class StaticTextPlugin {
@DefineKernelFunction(description = "Change all string chars to uppercase", name = "uppercase")
public static String uppercase(
@KernelFunctionParameter(description = "Text to uppercase", name = "input") String input) {
return input.toUpperCase(Locale.ROOT);
}
@DefineKernelFunction(description = "Append the day variable", name = "appendDay")
public String appendDay(
@KernelFunctionParameter(description = "Append the day variable", name = "appendDay") String input,
@KernelFunctionParameter(description = "Value of the day to append", name = "day") String day) {
return input + day;
}
}
/// <summary>
/// Print a list of all the functions imported into the kernel, including function descriptions,
/// list of parameters, parameters descriptions, etc.
@@ -143,4 +128,20 @@ public class Example10_DescribeAllPluginsAndFunctions {
System.out.println();
}
public static class StaticTextPlugin {
@DefineKernelFunction(description = "Change all string chars to uppercase", name = "uppercase")
public static String uppercase(
@KernelFunctionParameter(description = "Text to uppercase", name = "input") String input) {
return input.toUpperCase(Locale.ROOT);
}
@DefineKernelFunction(description = "Append the day variable", name = "appendDay")
public String appendDay(
@KernelFunctionParameter(description = "Append the day variable", name = "appendDay") String input,
@KernelFunctionParameter(description = "Value of the day to append", name = "day") String day) {
return input + day;
}
}
}
@@ -1,9 +1,10 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.plugin.KernelPluginFactory;
import com.microsoft.semantickernel.plugins.web.SearchUrlPlugin;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
public class Example11_WebSearchQueries {
@@ -9,15 +9,16 @@ import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.aiservices.openai.textcompletion.OpenAITextGenerationService;
import com.microsoft.semantickernel.exceptions.ConfigurationException;
import com.microsoft.semantickernel.orchestration.FunctionResult;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments.Builder;
import com.microsoft.semantickernel.plugin.KernelPlugin;
import com.microsoft.semantickernel.plugin.KernelPluginFactory;
import com.microsoft.semantickernel.samples.plugins.ConversationSummaryPlugin;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments.Builder;
import com.microsoft.semantickernel.services.textcompletion.TextGenerationService;
import reactor.core.publisher.Mono;
/**
* Demonstrate the {@see com.microsoft.semantickernel.samples.plugins.ConversationSummaryPlugin} plugin.
* Demonstrate the {@see com.microsoft.semantickernel.samples.plugins.ConversationSummaryPlugin}
* plugin.
* <p>
* Refer to the <a href=
* "https://github.com/microsoft/semantic-kernel/blob/experimental-java/java/samples/sample-code/README.md">
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import com.azure.ai.openai.OpenAIAsyncClient;
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import com.azure.ai.openai.OpenAIAsyncClient;
@@ -5,9 +6,9 @@ import com.azure.ai.openai.OpenAIClientBuilder;
import com.azure.identity.DeviceCodeCredential;
import com.azure.identity.DeviceCodeCredentialBuilder;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.exceptions.ConfigurationException;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
import com.microsoft.semantickernel.services.chatcompletion.ChatHistory;
import com.microsoft.semantickernel.exceptions.ConfigurationException;
public class Example26_AADAuth {
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import com.azure.ai.openai.OpenAIAsyncClient;
@@ -5,10 +6,10 @@ import com.azure.ai.openai.OpenAIClientBuilder;
import com.azure.core.credential.AzureKeyCredential;
import com.azure.core.credential.KeyCredential;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
import com.microsoft.semantickernel.contextvariables.ContextVariableTypes;
import com.microsoft.semantickernel.semanticfunctions.KernelFunction;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.contextvariables.ContextVariableTypes;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
public class Example27_PromptFunctionsUsingChatGPT {
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import com.azure.ai.openai.OpenAIAsyncClient;
@@ -5,16 +6,16 @@ import com.azure.ai.openai.OpenAIClientBuilder;
import com.azure.core.credential.AzureKeyCredential;
import com.azure.core.credential.KeyCredential;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
import com.microsoft.semantickernel.services.chatcompletion.ChatHistory;
import com.microsoft.semantickernel.implementation.EmbeddedResourceLoader;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.plugin.KernelPlugin;
import com.microsoft.semantickernel.plugin.KernelPluginFactory;
import com.microsoft.semantickernel.samples.plugins.TimePlugin;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.semanticfunctions.PromptTemplateConfig;
import com.microsoft.semantickernel.semanticfunctions.PromptTemplateFactory;
import com.microsoft.semantickernel.services.ServiceNotFoundException;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
import com.microsoft.semantickernel.services.chatcompletion.ChatHistory;
import java.io.FileNotFoundException;
import java.time.ZoneId;
import java.time.ZonedDateTime;
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import com.azure.ai.openai.OpenAIAsyncClient;
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import com.azure.ai.openai.OpenAIAsyncClient;
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import com.azure.ai.openai.OpenAIAsyncClient;
@@ -6,10 +7,10 @@ import com.azure.core.credential.AzureKeyCredential;
import com.azure.core.credential.KeyCredential;
import com.azure.core.http.HttpClient;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
import com.microsoft.semantickernel.plugin.KernelPluginFactory;
import com.microsoft.semantickernel.samples.plugins.ConversationSummaryPlugin;
import com.microsoft.semantickernel.services.OrderedAIServiceSelector;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
import com.microsoft.semantickernel.services.textcompletion.TextGenerationService;
import java.util.ArrayList;
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import com.azure.ai.openai.OpenAIAsyncClient;
@@ -6,11 +7,11 @@ import com.azure.core.credential.AzureKeyCredential;
import com.azure.core.credential.KeyCredential;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.aiservices.openai.chatcompletion.OpenAIChatCompletion;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
import com.microsoft.semantickernel.orchestration.FunctionResult;
import com.microsoft.semantickernel.semanticfunctions.KernelFunction;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionFromPrompt;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
public class Example43_GetModelResult {
@@ -52,8 +53,8 @@ public class Example43_GetModelResult {
// Create function
String FunctionDefinition = "Hi, give me 5 book suggestions about: {{$input}}";
KernelFunction<String> myFunction = KernelFunctionFromPrompt.create(
FunctionDefinition);
KernelFunction<String> myFunction = KernelFunctionFromPrompt.<String>builder()
.withTemplate(FunctionDefinition).build();
// Invoke function through kernel
FunctionResult<String> result = kernel.invokeAsync(
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import com.azure.ai.openai.OpenAIAsyncClient;
@@ -5,10 +6,10 @@ import com.azure.ai.openai.OpenAIClientBuilder;
import com.azure.core.credential.AzureKeyCredential;
import com.azure.core.credential.KeyCredential;
import com.microsoft.semantickernel.aiservices.openai.chatcompletion.OpenAIChatCompletion;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
import com.microsoft.semantickernel.services.chatcompletion.ChatHistory;
import com.microsoft.semantickernel.orchestration.InvocationContext;
import com.microsoft.semantickernel.orchestration.PromptExecutionSettings;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
import com.microsoft.semantickernel.services.chatcompletion.ChatHistory;
public class Example44_MultiChatCompletion {
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import com.azure.ai.openai.OpenAIAsyncClient;
@@ -5,10 +6,10 @@ import com.azure.ai.openai.OpenAIClientBuilder;
import com.azure.core.credential.AzureKeyCredential;
import com.azure.core.credential.KeyCredential;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
import com.microsoft.semantickernel.services.chatcompletion.ChatHistory;
import com.microsoft.semantickernel.orchestration.InvocationContext;
import com.microsoft.semantickernel.orchestration.PromptExecutionSettings;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
import com.microsoft.semantickernel.services.chatcompletion.ChatHistory;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import com.microsoft.semantickernel.text.TextChunker;
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import com.azure.ai.openai.OpenAIAsyncClient;
@@ -6,14 +7,14 @@ import com.azure.core.credential.AzureKeyCredential;
import com.azure.core.credential.KeyCredential;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.aiservices.openai.chatcompletion.OpenAIChatCompletion;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.orchestration.PromptExecutionSettings;
import com.microsoft.semantickernel.plugin.KernelPluginFactory;
import com.microsoft.semantickernel.plugins.text.TextPlugin;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionFromPrompt;
import com.microsoft.semantickernel.semanticfunctions.KernelPromptTemplateFactory;
import com.microsoft.semantickernel.semanticfunctions.PromptTemplateConfig;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
public class Example56_TemplateMethodFunctionsWithMultipleArguments {
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import com.azure.ai.openai.OpenAIAsyncClient;
@@ -10,7 +11,7 @@ import com.azure.core.credential.KeyCredential;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.Kernel.Builder;
import com.microsoft.semantickernel.aiservices.openai.chatcompletion.OpenAIChatCompletion;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
import com.microsoft.semantickernel.contextvariables.ContextVariable;
import com.microsoft.semantickernel.hooks.FunctionInvokedEvent;
import com.microsoft.semantickernel.hooks.KernelHook.FunctionInvokedHook;
import com.microsoft.semantickernel.hooks.KernelHook.FunctionInvokingHook;
@@ -21,11 +22,11 @@ import com.microsoft.semantickernel.hooks.KernelHooks;
import com.microsoft.semantickernel.hooks.PreChatCompletionEvent;
import com.microsoft.semantickernel.hooks.PromptRenderedEvent;
import com.microsoft.semantickernel.orchestration.FunctionResult;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.orchestration.PromptExecutionSettings;
import com.microsoft.semantickernel.contextvariables.ContextVariable;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionFromPrompt;
import com.microsoft.semantickernel.semanticfunctions.OutputVariable;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.atomic.AtomicInteger;
@@ -288,8 +289,10 @@ public class Example57_KernelHooks {
System.out.println("\n======== Cancelling Pipeline Execution - Invoked event ========\n");
// Initialize prompts
var firstFunction = KernelFunctionFromPrompt.create("Write a phrase with Invoke.");
var secondFunction = KernelFunctionFromPrompt.create("Write a phrase with Cancellation.");
var firstFunction = KernelFunctionFromPrompt.<String>builder()
.withTemplate("Write a phrase with Invoke.").build();
var secondFunction = KernelFunctionFromPrompt.<String>builder()
.withTemplate("Write a phrase with Cancellation.").build();
AtomicInteger invokingCounter = new AtomicInteger(0);
kernel.getGlobalKernelHooks().addHook((FunctionInvokingHook) event -> {
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import com.azure.ai.openai.OpenAIAsyncClient;
@@ -6,12 +7,12 @@ import com.azure.core.credential.AzureKeyCredential;
import com.azure.core.credential.KeyCredential;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.aiservices.openai.chatcompletion.OpenAIChatCompletion;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
import com.microsoft.semantickernel.semanticfunctions.KernelFunction;
import com.microsoft.semantickernel.orchestration.PromptExecutionSettings;
import com.microsoft.semantickernel.semanticfunctions.KernelFunction;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionFromPrompt;
import com.microsoft.semantickernel.semanticfunctions.OutputVariable;
import com.microsoft.semantickernel.semanticfunctions.PromptTemplateConfig;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
public class Example58_ConfigureExecutionSettings {
@@ -88,7 +89,9 @@ public class Example58_ConfigureExecutionSettings {
var promptConfig = PromptTemplateConfig
.parseFromJson(configPayload)
.setTemplate(prompt);
.copy()
.withTemplate(prompt)
.build();
var func = KernelFunction
.createFromPrompt(promptConfig)
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import com.azure.ai.openai.OpenAIAsyncClient;
@@ -6,16 +7,16 @@ import com.azure.core.credential.AzureKeyCredential;
import com.azure.core.credential.KeyCredential;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.aiservices.openai.chatcompletion.OpenAIChatCompletion;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
import com.microsoft.semantickernel.semanticfunctions.KernelFunction;
import com.microsoft.semantickernel.contextvariables.ContextVariableTypes;
import com.microsoft.semantickernel.orchestration.PromptExecutionSettings;
import com.microsoft.semantickernel.orchestration.ToolCallBehavior;
import com.microsoft.semantickernel.contextvariables.ContextVariableTypes;
import com.microsoft.semantickernel.plugin.KernelPlugin;
import com.microsoft.semantickernel.plugin.KernelPluginFactory;
import com.microsoft.semantickernel.semanticfunctions.KernelFunction;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionFromPrompt;
import com.microsoft.semantickernel.semanticfunctions.annotations.DefineKernelFunction;
import com.microsoft.semantickernel.semanticfunctions.annotations.KernelFunctionParameter;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionFromPrompt;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
public class Example59_OpenAIFunctionCalling {
@@ -27,33 +28,6 @@ public class Example59_OpenAIFunctionCalling {
private static final String MODEL_ID = System.getenv()
.getOrDefault("MODEL_ID", "gpt-35-turbo-2");
public static class Plugin {
@DefineKernelFunction(name = "getLatitudeOfCity", description = "Gets the latitude of a given city")
public String getLatitudeOfCity(
@KernelFunctionParameter(name = "cityName", description = "City name") String cityName) {
return "1.0";
}
@DefineKernelFunction(name = "getLongitudeOfCity", description = "Gets the longitude of a given city")
public String getLongitudeOfCity(
@KernelFunctionParameter(name = "cityName", description = "City name") String cityName) {
return "2.0";
}
@DefineKernelFunction(name = "getsTheWeatherAtAGivenLocation", description = "Gets the current weather at a given longitude and latitude")
public String getWeatherForCityAtTime(
@KernelFunctionParameter(name = "latitude", description = "latitude of the location") String latitude,
@KernelFunctionParameter(name = "longitude", description = "longitude of the location") String longitude) {
return "61 and rainy";
}
@DefineKernelFunction(name = "getsTheWeatherForCity", description = "Gets the current weather at a city name")
public String getsTheWeatherForCity(
@KernelFunctionParameter(name = "cityName", description = "Name of the city") String cityName) {
return "80 and sunny";
}
}
public static void main(String[] args) throws NoSuchMethodException {
System.out.println("======== Open AI - Function calling ========");
@@ -156,4 +130,32 @@ public class Example59_OpenAIFunctionCalling {
System.out.println(result.getResult());
}
public static class Plugin {
@DefineKernelFunction(name = "getLatitudeOfCity", description = "Gets the latitude of a given city")
public String getLatitudeOfCity(
@KernelFunctionParameter(name = "cityName", description = "City name") String cityName) {
return "1.0";
}
@DefineKernelFunction(name = "getLongitudeOfCity", description = "Gets the longitude of a given city")
public String getLongitudeOfCity(
@KernelFunctionParameter(name = "cityName", description = "City name") String cityName) {
return "2.0";
}
@DefineKernelFunction(name = "getsTheWeatherAtAGivenLocation", description = "Gets the current weather at a given longitude and latitude")
public String getWeatherForCityAtTime(
@KernelFunctionParameter(name = "latitude", description = "latitude of the location") String latitude,
@KernelFunctionParameter(name = "longitude", description = "longitude of the location") String longitude) {
return "61 and rainy";
}
@DefineKernelFunction(name = "getsTheWeatherForCity", description = "Gets the current weather at a city name")
public String getsTheWeatherForCity(
@KernelFunctionParameter(name = "cityName", description = "Name of the city") String cityName) {
return "80 and sunny";
}
}
}
@@ -1,10 +1,11 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.contextvariables.ContextVariableTypeConverter;
import com.microsoft.semantickernel.contextvariables.ContextVariableTypes;
import com.microsoft.semantickernel.plugin.KernelPluginFactory;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.semanticfunctions.annotations.DefineKernelFunction;
import reactor.core.publisher.Mono;
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import com.azure.ai.openai.OpenAIAsyncClient;
@@ -5,12 +6,12 @@ import com.azure.ai.openai.OpenAIClientBuilder;
import com.azure.core.credential.AzureKeyCredential;
import com.azure.core.credential.KeyCredential;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
import com.microsoft.semantickernel.orchestration.PromptExecutionSettings;
import com.microsoft.semantickernel.semanticfunctions.KernelFunction;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.orchestration.PromptExecutionSettings;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionFromPrompt;
import com.microsoft.semantickernel.semanticfunctions.PromptTemplateConfig;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
import com.microsoft.semantickernel.services.textcompletion.TextGenerationService;
import java.util.Arrays;
import java.util.HashMap;
@@ -124,11 +125,14 @@ public class Example61_MultipleLLMs {
.build());
});
var promptConfig = new PromptTemplateConfig(prompt);
promptConfig.setName("HelloAI");
promptConfig.setExecutionSettings(modelSettings);
var promptConfig = PromptTemplateConfig.defaultTemplateBuilder()
.withTemplate(prompt)
.withName("HelloAI")
.withExecutionSettings(modelSettings)
.build();
var function = KernelFunctionFromPrompt.create(promptConfig);
var function = KernelFunctionFromPrompt.builder().withPromptTemplateConfig(promptConfig)
.build();
var result = kernel.invokeAsync(function)
.withArguments(KernelFunctionArguments.builder().build())
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import com.azure.ai.openai.OpenAIAsyncClient;
@@ -5,15 +6,15 @@ import com.azure.ai.openai.OpenAIClientBuilder;
import com.azure.core.credential.AzureKeyCredential;
import com.azure.core.credential.KeyCredential;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
import com.microsoft.semantickernel.orchestration.PromptExecutionSettings;
import com.microsoft.semantickernel.semanticfunctions.KernelFunction;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.orchestration.PromptExecutionSettings;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionFromPrompt;
import com.microsoft.semantickernel.services.AIService;
import com.microsoft.semantickernel.services.AIServiceSelection;
import com.microsoft.semantickernel.services.AIServiceCollection;
import com.microsoft.semantickernel.services.AIServiceSelection;
import com.microsoft.semantickernel.services.BaseAIServiceSelector;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
import com.microsoft.semantickernel.services.textcompletion.TextGenerationService;
import java.util.Map;
import javax.annotation.Nullable;
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import com.azure.ai.openai.OpenAIAsyncClient;
@@ -5,8 +6,8 @@ import com.azure.ai.openai.OpenAIClientBuilder;
import com.azure.core.credential.AzureKeyCredential;
import com.azure.core.credential.KeyCredential;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionFromPrompt;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
import java.util.concurrent.CountDownLatch;
public class Example63_ChatCompletionPrompts {
@@ -49,7 +50,8 @@ public class Example63_ChatCompletionPrompts {
<message role="system">Respond with JSON.</message>
""".stripIndent();
var chatSemanticFunction = KernelFunctionFromPrompt.create(chatPrompt);
var chatSemanticFunction = KernelFunctionFromPrompt.<String>builder()
.withTemplate(chatPrompt).build();
var chatPromptResult = kernel.invokeAsync(chatSemanticFunction).block();
System.out.println("Chat Prompt:");
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import com.azure.ai.openai.OpenAIAsyncClient;
@@ -6,13 +7,13 @@ import com.azure.core.credential.AzureKeyCredential;
import com.azure.core.credential.KeyCredential;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.aiservices.openai.chatcompletion.OpenAIChatCompletion;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.semanticfunctions.AggregatorPromptTemplateFactory;
import com.microsoft.semantickernel.semanticfunctions.HandlebarsPromptTemplateFactory;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionFromPrompt;
import com.microsoft.semantickernel.semanticfunctions.KernelPromptTemplateFactory;
import com.microsoft.semantickernel.semanticfunctions.PromptTemplateFactory;
import com.microsoft.semantickernel.services.chatcompletion.ChatCompletionService;
import java.util.List;
public class Example64_MultiplePromptTemplates {
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
/*
@@ -1,20 +1,13 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.semanticfunctions.KernelFunction;
import com.microsoft.semantickernel.plugin.KernelPlugin;
import com.microsoft.semantickernel.semanticfunctions.KernelFunction;
import com.microsoft.semantickernel.semanticfunctions.annotations.DefineKernelFunction;
public class Example69_MutableKernelPlugin {
public static class Time {
@DefineKernelFunction(name = "date")
public String date() {
return "2021-09-01";
}
}
/**
* Mutable KernelPlugin example
* <p>
@@ -31,6 +24,7 @@ public class Example69_MutableKernelPlugin {
.build());
Kernel kernel = Kernel.builder().build();
kernel.addPlugin(plugin);
var result = kernel.invokeAsync(kernel.getFunction("Plugin", "dateFunction"))
@@ -38,4 +32,12 @@ public class Example69_MutableKernelPlugin {
System.out.println("Result: " + result.getResult());
}
public static class Time {
@DefineKernelFunction(name = "date")
public String date() {
return "2021-09-01";
}
}
}
@@ -1,3 +1,4 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples;
import java.util.Arrays;
@@ -13,11 +14,6 @@ import java.util.Scanner;
*/
public class RunAll {
public interface MainMethod {
void run(String[] args) throws Exception;
}
public static void main(String[] args) {
List<MainMethod> mains = Arrays.asList(
Example01_NativeFunctions::main,
@@ -43,6 +39,7 @@ public class RunAll {
Example56_TemplateMethodFunctionsWithMultipleArguments::main,
Example57_KernelHooks::main,
Example58_ConfigureExecutionSettings::main,
Example60_AdvancedMethodFunctions::main,
Example61_MultipleLLMs::main,
Example62_CustomAIServiceSelector::main,
Example63_ChatCompletionPrompts::main,
@@ -63,4 +60,9 @@ public class RunAll {
}
});
}
public interface MainMethod {
void run(String[] args) throws Exception;
}
}
@@ -0,0 +1,93 @@
// Copyright (c) Microsoft. All rights reserved.
package com.microsoft.semantickernel.samples.syntaxexamples.java;
import com.azure.ai.openai.OpenAIAsyncClient;
import com.azure.ai.openai.OpenAIClientBuilder;
import com.azure.core.credential.AzureKeyCredential;
import com.azure.core.credential.KeyCredential;
import com.microsoft.semantickernel.Kernel;
import com.microsoft.semantickernel.Kernel.Builder;
import com.microsoft.semantickernel.exceptions.ConfigurationException;
import com.microsoft.semantickernel.implementation.EmbeddedResourceLoader;
import com.microsoft.semantickernel.orchestration.FunctionResult;
import com.microsoft.semantickernel.semanticfunctions.KernelFunction;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionYaml;
import com.microsoft.semantickernel.services.textcompletion.TextGenerationService;
import java.io.IOException;
public class KernelFunctionYaml_Example {
private static final String CLIENT_KEY = System.getenv("CLIENT_KEY");
private static final String AZURE_CLIENT_KEY = System.getenv("AZURE_CLIENT_KEY");
// Only required if AZURE_CLIENT_KEY is set
private static final String CLIENT_ENDPOINT = System.getenv("CLIENT_ENDPOINT");
private static final String MODEL_ID = System.getenv()
.getOrDefault("MODEL_ID", "text-davinci-003");
public static void main(String[] args) throws ConfigurationException, IOException {
OpenAIAsyncClient client;
if (AZURE_CLIENT_KEY != null) {
client = new OpenAIClientBuilder()
.credential(new AzureKeyCredential(AZURE_CLIENT_KEY))
.endpoint(CLIENT_ENDPOINT)
.buildAsyncClient();
} else {
client = new OpenAIClientBuilder()
.credential(new KeyCredential(CLIENT_KEY))
.buildAsyncClient();
}
TextGenerationService textGenerationService = TextGenerationService.builder()
.withOpenAIAsyncClient(client)
.withModelId(MODEL_ID)
.build();
Builder kernelBuilder = Kernel.builder()
.withAIService(TextGenerationService.class, textGenerationService);
semanticKernelTemplate(kernelBuilder.build());
handlebarsTemplate(kernelBuilder.build());
}
private static void handlebarsTemplate(Kernel kernel) throws IOException {
String yaml = EmbeddedResourceLoader.readFile("GenerateStoryHandlebars.yaml",
KernelFunctionYaml_Example.class);
KernelFunction<String> function = KernelFunctionYaml.fromPromptYaml(yaml);
FunctionResult<String> result = function
.invokeAsync(kernel)
.withArguments(
KernelFunctionArguments.builder()
.withVariable("length", 5)
.withVariable("topic", "dogs")
.build())
.block();
System.out.println(result.getResult());
}
private static void semanticKernelTemplate(Kernel kernel) throws IOException {
String yaml = EmbeddedResourceLoader.readFile("GenerateStory.yaml",
KernelFunctionYaml_Example.class);
KernelFunction<String> function = KernelFunctionYaml.fromPromptYaml(yaml);
FunctionResult<String> result = function
.invokeAsync(kernel)
.withArguments(
KernelFunctionArguments.builder()
.withVariable("length", 5)
.withVariable("topic", "cats")
.build())
.block();
System.out.println(result.getResult());
}
}
@@ -0,0 +1,17 @@
name: GenerateStory
template: |
Tell a story about {{$topic}} that is {{$length}} sentences long.
template_format: semantic-kernel
description: A function that generates a story about a topic.
input_variables:
- name: topic
description: The topic of the story.
is_required: true
- name: length
description: The number of sentences in the story.
is_required: true
output_variable:
description: The generated story.
execution_settings:
default:
temperature: 0.6
@@ -0,0 +1,23 @@
name: GenerateStory
template: |
Tell a story about {{topic}} that is {{length}} sentences long.
template_format: handlebars
description: A function that generates a story about a topic.
input_variables:
- name: topic
description: The topic of the story.
is_required: true
- name: length
description: The number of sentences in the story.
is_required: true
output_variable:
description: The generated story.
execution_settings:
service1:
model_id: gpt-4
temperature: 0.6
service2:
model_id: gpt-3
temperature: 0.4
default:
temperature: 0.5
+8 -1
View File
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
@@ -66,5 +67,11 @@
<artifactId>junit-jupiter-api</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.wiremock</groupId>
<artifactId>wiremock</artifactId>
<version>3.3.1</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
@@ -3,14 +3,17 @@ package com.microsoft.semantickernel;
import com.microsoft.semantickernel.builders.Buildable;
import com.microsoft.semantickernel.builders.SemanticKernelBuilder;
import com.microsoft.semantickernel.contextvariables.ContextVariableType;
import com.microsoft.semantickernel.hooks.KernelHooks;
import com.microsoft.semantickernel.orchestration.FunctionInvocation;
import com.microsoft.semantickernel.semanticfunctions.KernelFunction;
import com.microsoft.semantickernel.orchestration.InvocationContext;
import com.microsoft.semantickernel.plugin.KernelPlugin;
import com.microsoft.semantickernel.semanticfunctions.KernelFunction;
import com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments;
import com.microsoft.semantickernel.services.AIService;
import com.microsoft.semantickernel.services.AIServiceCollection;
import com.microsoft.semantickernel.services.AIServiceSelection;
import com.microsoft.semantickernel.services.AIServiceSelector;
import com.microsoft.semantickernel.services.AIServiceCollection;
import com.microsoft.semantickernel.services.OrderedAIServiceSelector;
import com.microsoft.semantickernel.services.ServiceNotFoundException;
import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
@@ -35,9 +38,13 @@ public class Kernel implements Buildable {
/**
* Initializes a new instance of {@code Kernel}.
* @param serviceSelector The {@code AIServiceSelector} used to query for services available through the kernel.
* @param plugins The collection of plugins available through the kernel. If {@code null}, an empty collection will be used.
* @param globalKernelHooks The global hooks to be used throughout the kernel. If {@code null}, an empty collection will be used.
*
* @param serviceSelector The {@code AIServiceSelector} used to query for services available
* through the kernel.
* @param plugins The collection of plugins available through the kernel. If
* {@code null}, an empty collection will be used.
* @param globalKernelHooks The global hooks to be used throughout the kernel. If {@code null},
* an empty collection will be used.
*/
public Kernel(
AIServiceSelector serviceSelector,
@@ -53,10 +60,20 @@ public class Kernel implements Buildable {
this.globalKernelHooks = new KernelHooks(globalKernelHooks);
}
/**
* Get the fluent builder for creating a new instance of {@code Kernel}.
*
* @return The fluent builder for creating a new instance of {@code Kernel}.
*/
public static Kernel.Builder builder() {
return new Kernel.Builder();
}
/**
* Invokes a {@code KernelFunction} function by name.
* @param <T> The return type of the function.
* @param pluginName The name of the plugin containing the function.
*
* @param <T> The return type of the function.
* @param pluginName The name of the plugin containing the function.
* @param functionName The name of the function to invoke.
* @return The result of the function invocation.
* @throws IllegalArgumentException if the plugin or function is not found.
@@ -73,7 +90,8 @@ public class Kernel implements Buildable {
/**
* Invokes a {@code KernelFunction}.
* @param <T> The return type of the function.
*
* @param <T> The return type of the function.
* @param function The function to invoke.
* @return The result of the function invocation.
* @see KernelFunction#invokeAsync(Kernel)
@@ -83,8 +101,9 @@ public class Kernel implements Buildable {
}
/**
* This method is used to add plugins to the kernel after it has been created.
* If a plugin with the same name already exists, it will be replaced.
* This method is used to add plugins to the kernel after it has been created. If a plugin with
* the same name already exists, it will be replaced.
*
* @param plugin The plugin to add.
* @return {@code this} kernel with the plugin added.
*/
@@ -95,6 +114,7 @@ public class Kernel implements Buildable {
/**
* Gets the plugin with the specified name.
*
* @param pluginName The name of the plugin to get.
* @return The plugin with the specified name, or {@code null} if no such plugin exists.
*/
@@ -105,6 +125,7 @@ public class Kernel implements Buildable {
/**
* Gets the plugins that were added to the kernel.
*
* @return The plugins available through the kernel (unmodifiable list).
* @see Kernel#getPlugins()
*/
@@ -114,8 +135,9 @@ public class Kernel implements Buildable {
/**
* Gets the function with the specified name from the plugin with the specified name.
* @param <T> The return type of the function.
* @param pluginName The name of the plugin containing the function.
*
* @param <T> The return type of the function.
* @param pluginName The name of the plugin containing the function.
* @param functionName The name of the function to get.
* @return The function with the specified name from the plugin with the specified name.
* @throws IllegalArgumentException if the plugin or function is not found.
@@ -128,7 +150,8 @@ public class Kernel implements Buildable {
/**
* Gets the functions available through the kernel. Functions are collected from all plugins
* available through the kernel.
* available through the kernel.
*
* @return The functions available through the kernel.
* @see Kernel#getPlugins()
* @see Kernel.Builder#withPlugin(KernelPlugin)
@@ -138,10 +161,12 @@ public class Kernel implements Buildable {
}
/**
* Get the {@code KernelHooks} used throughout the kernel.
* These {@code KernelHooks} are used in addition to any hooks provided to a function.
* Get the {@code KernelHooks} used throughout the kernel. These {@code KernelHooks} are used in
* addition to any hooks provided to a function.
*
* @return The {@code KernelHooks} used throughout the kernel.
* @see KernelFunction#invokeAsync(Kernel, KernelFunctionArguments, ContextVariableType, InvocationContext)
* @see KernelFunction#invokeAsync(Kernel, KernelFunctionArguments, ContextVariableType,
* InvocationContext)
*/
@SuppressFBWarnings("EI_EXPOSE_REP")
public KernelHooks getGlobalKernelHooks() {
@@ -150,6 +175,7 @@ public class Kernel implements Buildable {
/**
* Get the AIServiceSelector used to query for services available through the kernel.
*
* @return The AIServiceSelector used to query for services available through the kernel.
*/
public AIServiceSelector getServiceSelector() {
@@ -158,11 +184,13 @@ public class Kernel implements Buildable {
/**
* Get the service of the specified type from the kernel.
* @param <T> The type of the service to get.
*
* @param <T> The type of the service to get.
* @param clazz The class of the service to get.
* @return The service of the specified type from the kernel.
* @throws ServiceNotFoundException if the service is not found.
* @see com.microsoft.semantickernel.services.AIServiceSelector#trySelectAIService(Class, KernelFunction, KernelFunctionArguments)
* @see com.microsoft.semantickernel.services.AIServiceSelector#trySelectAIService(Class,
* KernelFunction, com.microsoft.semantickernel.semanticfunctions.KernelFunctionArguments)
*/
public <T extends AIService> T getService(Class<T> clazz) throws ServiceNotFoundException {
AIServiceSelection<T> selector = serviceSelector
@@ -178,14 +206,6 @@ public class Kernel implements Buildable {
return selector.getService();
}
/**
* Get the fluent builder for creating a new instance of {@code Kernel}.
* @return The fluent builder for creating a new instance of {@code Kernel}.
*/
public static Kernel.Builder builder() {
return new Kernel.Builder();
}
/**
* A fluent builder for creating a new instance of {@code Kernel}.
*/
@@ -198,8 +218,9 @@ public class Kernel implements Buildable {
/**
* Adds a service to the kernel.
* @param <T> The type of the service to add.
* @param clazz The class of the service to add.
*
* @param <T> The type of the service to add.
* @param clazz The class of the service to add.
* @param aiService The service to add.
* @return {@code this} builder with the service added.
*/
@@ -210,6 +231,7 @@ public class Kernel implements Buildable {
/**
* Adds a plugin to the kernel.
*
* @param plugin The plugin to add.
* @return {@code this} builder with the plugin added.
*/
@@ -220,6 +242,7 @@ public class Kernel implements Buildable {
/**
* Sets the service selector provider for the kernel.
*
* @param serviceSelector The service selector provider for the kernel.
* @return {@code this} builder with the service selector provider set.
*/
@@ -231,6 +254,7 @@ public class Kernel implements Buildable {
/**
* Builds a new instance of {@code Kernel} with the services and plugins provided.
*
* @return A new instance of {@code Kernel}.
*/
@Override

Some files were not shown because too many files have changed in this diff Show More