BUG: Inferred objective is empty when tool calls come between the request and the answer
Les mainteneurs répondent en général sous 2 jours
Évaluation
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Accessibilité débutants
- 25/100
Piste de recherche
Read extract_objective_from_previous_turn_async and compare its lookup with MemoryInterface.get_request_from_response_async and WildGuardScorer, which the issue cites. Reproduce with the described sequence of user, function call, tool output, and answer turns; done means the inferred objective is the original user question. Pull request #3517 is already open for this issue.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Describe the bug
extract_objective_from_previous_turn_async (used when a scorer infers the objective from the request) only reads the turn at sequence - 1. When a target runs a tool loop, memory stores the user request, the function_call, the function_call_output and then the answer, so the turn before the answer is the tool output. It has no user text, and the scorer ends up with an empty objective.
#3410 fixed the same problem in MemoryInterface.get_request_from_response_async, and WildGuardScorer already looks back to the latest earlier user turn.
Steps to Reproduce
Store a conversation of user question (seq 2), assistant function_call (seq 3), tool function_call_output (seq 4) and assistant answer (seq 5), then call extract_objective_from_previous_turn_async on the answer.
Expected Results
The objective is the user question from seq 2.
Actual Results
An empty string.
Versions
Linux, Python 3.13.16, PyRIT 1.2.0.dev0 from main (96de757e)
- Langage dominant
- Python
- Étoiles
- 4.7k
- Forks
- 980
- Merge moyen
- 2 j 9 h
- PR mergées (30 j)
- 433
Préparer son environnement
Lance le conteneur de développement du projet dans votre navigateur, avec votre propre compte GitHub.
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Aucun guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de microsoft/PyRIT
-
BUG: Garak and ML-VLSU loaders still load one example when max_examples is 0 or negativePeut-être pris @ShivamSharma43 l’a pris il y a 1 jour. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
Les mainteneurs répondent en général sous 2 jours
-
BUG: ComicJailbreak max_examples counts goals that render nothing, so templates=["code"] with max_examples=10 failsPeut-être pris @ShivamSharma43 l’a pris il y a 1 jour. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
Les mainteneurs répondent en général sous 2 jours
-
BUG: SeedDatasetFilter matches harm_categories, modalities and size case-sensitively, unlike tagsPeut-être pris @ShivamSharma43 l’a pris il y a 1 jour. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
Les mainteneurs répondent en général sous 2 jours
-
Conversation drawer shows the previous attack's conversations after switching attacksPeut-être pris @ManoharPaturi l’a pris il y a 1 jour. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
microsoft/PyRIT#3575 · 2 commentaires · 1 personne assignée ·
Les mainteneurs répondent en général sous 2 jours
-
Conversation draft turns permanently dirty when applied conversions match no piecePeut-être pris @ManoharPaturi l’a pris il y a 1 jour. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 83/100
microsoft/PyRIT#3573 · 1 personne assignée ·
Les mainteneurs répondent en général sous 2 jours
Toutes les issues de microsoft/PyRIT
Issues similaires
-
enhancement
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
glossyio/traffic-monitor#264 ·
Les mainteneurs répondent en général sous 1 jour
-
Add self-hostOuverte
Difficulté 1/5 Moins d'une heure Accessibilité débutants 75/100
Atarity/deploy-your-own-saas#102 ·
-
[Bug]: RDFlex silently drops the covariate adjustment when the outcome or treatment column is integer-typedPeut-être pris @vrjdev l’a pris aujourd’hui. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
DoubleML/doubleml-for-py#424 ·
Les mainteneurs répondent en général sous 1 jour
-
agentic-dmx docs enhancement
Difficulté 1/5 1-3 heures Accessibilité débutants 86/100
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 72/100
521xueweihan/HelloGitHub#4150 ·