working version
This commit is contained in:
19
.mvn/wrapper/maven-wrapper.properties
vendored
19
.mvn/wrapper/maven-wrapper.properties
vendored
@@ -1,19 +0,0 @@
|
|||||||
# Licensed to the Apache Software Foundation (ASF) under one
|
|
||||||
# or more contributor license agreements. See the NOTICE file
|
|
||||||
# distributed with this work for additional information
|
|
||||||
# regarding copyright ownership. The ASF licenses this file
|
|
||||||
# to you under the Apache License, Version 2.0 (the
|
|
||||||
# "License"); you may not use this file except in compliance
|
|
||||||
# with the License. You may obtain a copy of the License at
|
|
||||||
#
|
|
||||||
# https://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing,
|
|
||||||
# software distributed under the License is distributed on an
|
|
||||||
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
||||||
# KIND, either express or implied. See the License for the
|
|
||||||
# specific language governing permissions and limitations
|
|
||||||
# under the License.
|
|
||||||
wrapperVersion=3.3.2
|
|
||||||
distributionType=only-script
|
|
||||||
distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.7/apache-maven-3.9.7-bin.zip
|
|
||||||
14
pom.xml
14
pom.xml
@@ -32,11 +32,9 @@
|
|||||||
</properties>
|
</properties>
|
||||||
<dependencies>
|
<dependencies>
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>com.olympus</groupId>
|
|
||||||
<artifactId>olympus-common</artifactId>
|
|
||||||
<version>1.0</version>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.springframework.boot</groupId>
|
<groupId>org.springframework.boot</groupId>
|
||||||
<artifactId>spring-boot-starter-data-mongodb</artifactId>
|
<artifactId>spring-boot-starter-data-mongodb</artifactId>
|
||||||
@@ -115,6 +113,12 @@
|
|||||||
<version>2.8.8</version>
|
<version>2.8.8</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.olympus</groupId>
|
||||||
|
<artifactId>olympus-common</artifactId>
|
||||||
|
<version>1.0</version>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
</dependencies>
|
</dependencies>
|
||||||
<dependencyManagement>
|
<dependencyManagement>
|
||||||
<dependencies>
|
<dependencies>
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ import org.springframework.web.bind.annotation.RestController;
|
|||||||
|
|
||||||
import com.olympus.hermione.dto.ScenarioExecutionInput;
|
import com.olympus.hermione.dto.ScenarioExecutionInput;
|
||||||
import com.olympus.hermione.dto.ScenarioOutput;
|
import com.olympus.hermione.dto.ScenarioOutput;
|
||||||
import com.olympus.models.Scenario;
|
import com.olympus.hermione.models.Scenario;
|
||||||
import com.olympus.hermione.models.ScenarioExecution;
|
import com.olympus.hermione.models.ScenarioExecution;
|
||||||
import com.olympus.hermione.repository.ScenarioRepository;
|
import com.olympus.hermione.repository.ScenarioRepository;
|
||||||
import com.olympus.hermione.repository.ScenarioExecutionRepository;
|
import com.olympus.hermione.repository.ScenarioExecutionRepository;
|
||||||
|
|||||||
@@ -1,16 +0,0 @@
|
|||||||
package com.olympus.hermione.dto.external;
|
|
||||||
|
|
||||||
import lombok.Getter;
|
|
||||||
import lombok.Setter;
|
|
||||||
|
|
||||||
@Getter
|
|
||||||
@Setter
|
|
||||||
public class CodeRagResponse {
|
|
||||||
|
|
||||||
private String fullyQualifiedName;
|
|
||||||
private String code;
|
|
||||||
private String description;
|
|
||||||
private String similarityScore;
|
|
||||||
private String documentId;
|
|
||||||
private String codeType;
|
|
||||||
}
|
|
||||||
@@ -1,23 +0,0 @@
|
|||||||
package com.olympus.hermione.dto.external;
|
|
||||||
|
|
||||||
import lombok.Getter;
|
|
||||||
import lombok.Setter;
|
|
||||||
|
|
||||||
@Getter
|
|
||||||
@Setter
|
|
||||||
public class SimilaritySearchCodeInput {
|
|
||||||
|
|
||||||
private String query;
|
|
||||||
private String topK;
|
|
||||||
private String similarityThreshold;
|
|
||||||
private String filterExpression;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
|
||||||
* .withQuery(query)
|
|
||||||
.withTopK(3)
|
|
||||||
.withSimilarityThreshold(0.8)
|
|
||||||
.withFilterExpression(b.eq("doc_type","GeneratedMethodDoc").build())
|
|
||||||
*/
|
|
||||||
23
src/main/java/com/olympus/hermione/models/Scenario.java
Normal file
23
src/main/java/com/olympus/hermione/models/Scenario.java
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
package com.olympus.hermione.models;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.springframework.data.annotation.Id;
|
||||||
|
import org.springframework.data.mongodb.core.mapping.Document;
|
||||||
|
|
||||||
|
import lombok.Getter;
|
||||||
|
import lombok.Setter;
|
||||||
|
|
||||||
|
@Document(collection = "scenarios")
|
||||||
|
@Getter @Setter
|
||||||
|
public class Scenario {
|
||||||
|
@Id
|
||||||
|
private String id;
|
||||||
|
private String name;
|
||||||
|
private String description;
|
||||||
|
private String startWithStepId;
|
||||||
|
private List<ScenarioStep> steps;
|
||||||
|
private List<ScenarioInputs> inputs;
|
||||||
|
|
||||||
|
private boolean useChatMemory=false;
|
||||||
|
}
|
||||||
@@ -6,7 +6,7 @@ import org.springframework.data.annotation.Id;
|
|||||||
import org.springframework.data.mongodb.core.mapping.Document;
|
import org.springframework.data.mongodb.core.mapping.Document;
|
||||||
|
|
||||||
import com.olympus.hermione.dto.ScenarioExecutionInput;
|
import com.olympus.hermione.dto.ScenarioExecutionInput;
|
||||||
import com.olympus.models.Scenario;
|
import com.olympus.hermione.models.Scenario;
|
||||||
|
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
|
|||||||
@@ -0,0 +1,15 @@
|
|||||||
|
package com.olympus.hermione.models;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
import lombok.Getter;
|
||||||
|
import lombok.Setter;
|
||||||
|
|
||||||
|
@Getter
|
||||||
|
@Setter
|
||||||
|
public class ScenarioInputs {
|
||||||
|
|
||||||
|
private String name;
|
||||||
|
private String type;
|
||||||
|
private String label;
|
||||||
|
}
|
||||||
21
src/main/java/com/olympus/hermione/models/ScenarioStep.java
Normal file
21
src/main/java/com/olympus/hermione/models/ScenarioStep.java
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
package com.olympus.hermione.models;
|
||||||
|
|
||||||
|
import java.util.HashMap;
|
||||||
|
import lombok.Getter;
|
||||||
|
import lombok.Setter;
|
||||||
|
|
||||||
|
@Getter
|
||||||
|
@Setter
|
||||||
|
public class ScenarioStep {
|
||||||
|
|
||||||
|
private String type;
|
||||||
|
private String description;
|
||||||
|
private String name;
|
||||||
|
private int order;
|
||||||
|
|
||||||
|
private String stepId;
|
||||||
|
private String nextStepId;
|
||||||
|
|
||||||
|
private HashMap<String,Object> attributes;
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
package com.olympus.hermione.models;
|
||||||
|
|
||||||
|
import lombok.Getter;
|
||||||
|
import lombok.Setter;
|
||||||
|
|
||||||
|
@Getter
|
||||||
|
@Setter
|
||||||
|
public class ScenarioStepAttribute {
|
||||||
|
|
||||||
|
private String name;
|
||||||
|
private String value;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@@ -3,7 +3,7 @@ package com.olympus.hermione.repository;
|
|||||||
import org.springframework.data.repository.CrudRepository;
|
import org.springframework.data.repository.CrudRepository;
|
||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
|
|
||||||
import com.olympus.models.Scenario;
|
import com.olympus.hermione.models.Scenario;
|
||||||
|
|
||||||
@Repository
|
@Repository
|
||||||
public interface ScenarioRepository extends CrudRepository<Scenario, String> {
|
public interface ScenarioRepository extends CrudRepository<Scenario, String> {
|
||||||
|
|||||||
@@ -20,9 +20,9 @@ import org.springframework.stereotype.Service;
|
|||||||
|
|
||||||
import com.olympus.hermione.dto.ScenarioExecutionInput;
|
import com.olympus.hermione.dto.ScenarioExecutionInput;
|
||||||
import com.olympus.hermione.dto.ScenarioOutput;
|
import com.olympus.hermione.dto.ScenarioOutput;
|
||||||
import com.olympus.models.Scenario;
|
import com.olympus.hermione.models.Scenario;
|
||||||
import com.olympus.hermione.models.ScenarioExecution;
|
import com.olympus.hermione.models.ScenarioExecution;
|
||||||
import com.olympus.models.ScenarioStep;
|
import com.olympus.hermione.models.ScenarioStep;
|
||||||
import com.olympus.hermione.repository.ScenarioExecutionRepository;
|
import com.olympus.hermione.repository.ScenarioExecutionRepository;
|
||||||
import com.olympus.hermione.repository.ScenarioRepository;
|
import com.olympus.hermione.repository.ScenarioRepository;
|
||||||
import com.olympus.hermione.stepSolvers.AdvancedAIPromptSolver;
|
import com.olympus.hermione.stepSolvers.AdvancedAIPromptSolver;
|
||||||
@@ -218,7 +218,7 @@ public class ScenarioExecutionService {
|
|||||||
scenarioExecutionRepository.save(scenarioExecution);
|
scenarioExecutionRepository.save(scenarioExecution);
|
||||||
|
|
||||||
scenarioOutput.setScenarioExecution_id(scenarioExecution.getId());
|
scenarioOutput.setScenarioExecution_id(scenarioExecution.getId());
|
||||||
scenarioOutput.setStatus("IN_PROGRESS");
|
scenarioOutput.setStatus("IN_PROGRESS");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,6 @@ import com.olympus.hermione.utility.AttributeParser;
|
|||||||
|
|
||||||
import ch.qos.logback.classic.Logger;
|
import ch.qos.logback.classic.Logger;
|
||||||
|
|
||||||
|
|
||||||
public class AdvancedAIPromptSolver extends StepSolver {
|
public class AdvancedAIPromptSolver extends StepSolver {
|
||||||
|
|
||||||
private String qai_system_prompt_template;
|
private String qai_system_prompt_template;
|
||||||
|
|||||||
@@ -10,7 +10,6 @@ import org.springframework.ai.chat.prompt.Prompt;
|
|||||||
|
|
||||||
import com.olympus.hermione.models.ScenarioExecution;
|
import com.olympus.hermione.models.ScenarioExecution;
|
||||||
import com.olympus.hermione.utility.AttributeParser;
|
import com.olympus.hermione.utility.AttributeParser;
|
||||||
|
|
||||||
import ch.qos.logback.classic.Logger;
|
import ch.qos.logback.classic.Logger;
|
||||||
|
|
||||||
public class BasicAIPromptSolver extends StepSolver {
|
public class BasicAIPromptSolver extends StepSolver {
|
||||||
|
|||||||
@@ -7,10 +7,11 @@ import org.springframework.cloud.client.ServiceInstance;
|
|||||||
import org.springframework.web.client.RestTemplate;
|
import org.springframework.web.client.RestTemplate;
|
||||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||||
import com.fasterxml.jackson.databind.ObjectWriter;
|
import com.fasterxml.jackson.databind.ObjectWriter;
|
||||||
import com.olympus.hermione.dto.external.CodeRagResponse;
|
|
||||||
import com.olympus.hermione.dto.external.SimilaritySearchCodeInput;
|
|
||||||
import com.olympus.hermione.models.ScenarioExecution;
|
import com.olympus.hermione.models.ScenarioExecution;
|
||||||
import com.olympus.hermione.utility.AttributeParser;
|
import com.olympus.hermione.utility.AttributeParser;
|
||||||
|
import com.olympus.dto.CodeRagResponse;
|
||||||
|
import com.olympus.dto.SimilaritySearchCodeInput;
|
||||||
|
|
||||||
import ch.qos.logback.classic.Logger;
|
import ch.qos.logback.classic.Logger;
|
||||||
|
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ import org.springframework.ai.vectorstore.VectorStore;
|
|||||||
import org.springframework.cloud.client.discovery.DiscoveryClient;
|
import org.springframework.cloud.client.discovery.DiscoveryClient;
|
||||||
|
|
||||||
import com.olympus.hermione.models.ScenarioExecution;
|
import com.olympus.hermione.models.ScenarioExecution;
|
||||||
import com.olympus.models.ScenarioStep;
|
import com.olympus.hermione.models.ScenarioStep;
|
||||||
import com.olympus.hermione.services.Neo4JUitilityService;
|
import com.olympus.hermione.services.Neo4JUitilityService;
|
||||||
|
|
||||||
public class StepSolver {
|
public class StepSolver {
|
||||||
|
|||||||
Reference in New Issue
Block a user