From a94512dad42716bf2f1c391fe930605302c173af Mon Sep 17 00:00:00 2001 From: Rotem Dan Date: Fri, 2 Aug 2024 16:45:46 +0300 Subject: [PATCH] Use native system instructions for Gemini 1.5 models --- .../pipelines/providers/google_manifold_pipeline.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/examples/pipelines/providers/google_manifold_pipeline.py b/examples/pipelines/providers/google_manifold_pipeline.py index d320ea9..7e90c7d 100644 --- a/examples/pipelines/providers/google_manifold_pipeline.py +++ b/examples/pipelines/providers/google_manifold_pipeline.py @@ -125,11 +125,14 @@ class Pipeline: "role": "user" if message["role"] == "user" else "model", "parts": [{"text": message["content"]}] }) - - if system_message: - contents.insert(0, {"role": "user", "parts": [{"text": f"System: {system_message}"}]}) - - model = genai.GenerativeModel(model_name=model_id) + + if "gemini-1.5" in model_id: + model = genai.GenerativeModel(model_name=model_id, system_instruction=system_message) + else: + if system_message: + contents.insert(0, {"role": "user", "parts": [{"text": f"System: {system_message}"}]}) + + model = genai.GenerativeModel(model_name=model_id) generation_config = GenerationConfig( temperature=body.get("temperature", 0.7),