Compare commits

..

5 Commits

Author SHA1 Message Date
chensuyue
8fa1119850 update llm default model id
Signed-off-by: chensuyue <suyue.chen@intel.com>
2025-05-21 22:53:29 +08:00
pre-commit-ci[bot]
d6255cf38c [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2025-05-14 08:29:26 +00:00
chensuyue
06e0910411 remove chatqna-without-rerank setting
Signed-off-by: chensuyue <suyue.chen@intel.com>
2025-05-14 15:11:33 +08:00
chensuyue
b45fc4f3bd add clean up option for benchmark
Signed-off-by: chensuyue <suyue.chen@intel.com>
2025-05-07 16:34:49 +08:00
chensuyue
6916390cc1 print deploy stdout in logs
Signed-off-by: chensuyue <suyue.chen@intel.com>
2025-05-07 15:49:12 +08:00
6 changed files with 60 additions and 43 deletions

13
.github/CODEOWNERS vendored
View File

@@ -1,18 +1,16 @@
# Code owners will review PRs within their respective folders.
* liang1.lv@intel.com feng.tian@intel.com suyue.chen@intel.com kaokao.lv@intel.com minmin.hou@intel.com rita.brugarolas.brufau@intel.com
* liang1.lv@intel.com feng.tian@intel.com suyue.chen@intel.com
/.github/ suyue.chen@intel.com ze.pan@intel.com
/AgentQnA/ abolfazl.shahbazi@intel.com kaokao.lv@intel.com minmin.hou@intel.com
/AgentQnA/ kaokao.lv@intel.com minmin.hou@intel.com
/AudioQnA/ sihan.chen@intel.com wenjiao.yue@intel.com
/AvatarChatbot/ chun.tao@intel.com kaokao.lv@intel.com
/ChatQnA/ liang1.lv@intel.com letong.han@intel.com
/CodeGen/ liang1.lv@intel.com
/CodeTrans/ sihan.chen@intel.com
/DBQnA/ supriya.krishnamurthi@intel.com liang1.lv@intel.com
/DocIndexRetriever/ abolfazl.shahbazi@intel.com kaokao.lv@intel.com chendi.xue@intel.com
/DocIndexRetriever/ kaokao.lv@intel.com chendi.xue@intel.com
/DocSum/ letong.han@intel.com
/EdgeCraftRAG/ yongbo.zhu@intel.com mingyuan.qi@intel.com
/FinanceAgent/ abolfazl.shahbazi@intel.com kaokao.lv@intel.com minmin.hou@intel.com rita.brugarolas.brufau@intel.com
/FaqGen/ yogesh.pandey@intel.com
/GraphRAG/ rita.brugarolas.brufau@intel.com abolfazl.shahbazi@intel.com
/InstructionTuning/ xinyu.ye@intel.com kaokao.lv@intel.com
/MultimodalQnA/ melanie.h.buehler@intel.com tiep.le@intel.com
@@ -22,5 +20,4 @@
/Text2Image/ wenjiao.yue@intel.com xinyu.ye@intel.com
/Translation/ liang1.lv@intel.com sihan.chen@intel.com
/VideoQnA/ huiling.bao@intel.com
/VisualQnA/ liang1.lv@intel.com sihan.chen@intel.com
/WorkflowExecAgent/ joshua.jian.ern.liew@intel.com kaokao.lv@intel.com
/VisualQnA/ liang1.lv@intel.com sihan.chen@intel.com

View File

@@ -26,4 +26,3 @@ jobs:
close-pr-message: "This PR was closed because it has been stalled for 7 days with no activity."
repo-token: ${{ secrets.ACTION_TOKEN }}
start-date: "2025-03-01T00:00:00Z"
exempt-issue-labels: "Backlog"

View File

@@ -9,7 +9,7 @@ on:
workflow_dispatch:
env:
EXAMPLES: CodeGen,CodeTrans #${{ vars.NIGHTLY_RELEASE_EXAMPLES }}
EXAMPLES: ${{ vars.NIGHTLY_RELEASE_EXAMPLES }}
TAG: "latest"
PUBLISH_TAGS: "latest"
@@ -75,7 +75,7 @@ jobs:
publish:
needs: [get-build-matrix, get-image-list, build-images]
if: ${{ success() }}
if: always()
strategy:
matrix:
image: ${{ fromJSON(needs.get-image-list.outputs.matrix) }}

View File

@@ -37,7 +37,7 @@ deploy:
llm:
engine: vllm # or tgi
model_id: "meta-llama/Meta-Llama-3-8B-Instruct" # mandatory
model_id: "meta-llama/Llama-3.1-8B-Instruct" # mandatory
replicaCount:
with_teirerank: [7, 15, 31, 63] # When teirerank.enabled is True
without_teirerank: [8, 16, 32, 64] # When teirerank.enabled is False

View File

@@ -192,7 +192,7 @@ def configure_rerank(values, with_rerank, deploy_config, example_type, node_sele
values["teirerank"]["nodeSelector"] = {key: value for key, value in node_selector.items()}
else:
if example_type == "chatqna":
values["image"] = {"repository": "opea/chatqna-without-rerank"}
values["CHATQNA_TYPE"] = "CHATQNA_NO_RERANK"
if "teirerank" not in values:
values["teirerank"] = {"enabled": False}
elif "enabled" not in values["teirerank"]:

View File

@@ -143,7 +143,7 @@ def pull_helm_chart(chart_pull_url, version, chart_name):
return untar_dir
def main(yaml_file, target_node=None, test_mode="oob"):
def main(yaml_file, target_node=None, test_mode="oob", clean_up=True):
"""Main function to process deployment configuration.
Args:
@@ -278,6 +278,9 @@ def main(yaml_file, target_node=None, test_mode="oob"):
chart_dir,
]
result = subprocess.run(cmd, check=True, capture_output=True, text=True)
print("Show deploy logs...")
print(result.stdout)
print("End of show deploy logs.")
match = re.search(r"values_file_path: (\S+)", result.stdout)
if match:
@@ -306,6 +309,9 @@ def main(yaml_file, target_node=None, test_mode="oob"):
"--update-service",
]
result = subprocess.run(cmd, check=True, capture_output=True, text=True)
print("Show deploy logs...")
print(result.stdout)
print("End of show deploy logs.")
if result.returncode != 0:
print(f"Update failed for {node} nodes configuration with {param_name} {batch_param}")
break # Skip remaining {param_name} for this node
@@ -372,36 +378,48 @@ def main(yaml_file, target_node=None, test_mode="oob"):
os.remove(temp_config_file)
finally:
# Uninstall the deployment
print(f"\nUninstalling deployment for {node} nodes...")
cmd = [
python_cmd,
"deploy.py",
"--chart-name",
chart_name,
"--namespace",
namespace,
"--uninstall",
]
try:
result = subprocess.run(cmd, check=True)
if result.returncode != 0:
print(f"Failed to uninstall deployment for {node} nodes")
except Exception as e:
print(f"Error while uninstalling deployment for {node} nodes: {str(e)}")
if clean_up:
# Uninstall the deployment
print(f"\nUninstalling deployment for {node} nodes...")
cmd = [
python_cmd,
"deploy.py",
"--chart-name",
chart_name,
"--namespace",
namespace,
"--uninstall",
]
try:
result = subprocess.run(cmd, check=True)
if result.returncode != 0:
print(f"Failed to uninstall deployment for {node} nodes")
except Exception as e:
print(f"Error while uninstalling deployment for {node} nodes: {str(e)}")
# Delete labels for current node configuration
print(f"Deleting labels for {node} nodes...")
cmd = [python_cmd, "deploy.py", "--chart-name", chart_name, "--num-nodes", str(node), "--delete-label"]
if current_node_names:
cmd.extend(["--node-names"] + current_node_names)
# Delete labels for current node configuration
print(f"Deleting labels for {node} nodes...")
cmd = [
python_cmd,
"deploy.py",
"--chart-name",
chart_name,
"--num-nodes",
str(node),
"--delete-label",
]
if current_node_names:
cmd.extend(["--node-names"] + current_node_names)
try:
result = subprocess.run(cmd, check=True)
if result.returncode != 0:
print(f"Failed to delete labels for {node} nodes")
except Exception as e:
print(f"Error while deleting labels for {node} nodes: {str(e)}")
try:
result = subprocess.run(cmd, check=True)
if result.returncode != 0:
print(f"Failed to delete labels for {node} nodes")
except Exception as e:
print(f"Error while deleting labels for {node} nodes: {str(e)}")
else:
print("Skipping cleanup for local debug. Manual cleanup may be required.")
exit(0)
except Exception as e:
print(f"Error processing configuration for {node} nodes: {str(e)}")
@@ -419,6 +437,9 @@ if __name__ == "__main__":
parser.add_argument("yaml_file", help="Path to the YAML configuration file")
parser.add_argument("--target-node", type=int, help="Optional: Target number of nodes to deploy.", default=None)
parser.add_argument("--test-mode", type=str, help="Test mode, either 'oob' (out of box) or 'tune'.", default="oob")
parser.add_argument(
"--clean-up", type=bool, help="Clean up after test, which can be closed for local debug.", default=True
)
args = parser.parse_args()
main(args.yaml_file, args.target_node, args.test_mode)
main(args.yaml_file, args.target_node, args.test_mode, args.clean_up)