Specify topics or behaviors to avoid through negative constraints that guide AI responses away from unwanted content.
USAGE
PromptBuilder.avoid_topics(topics)
Negative constraints provide explicit guidance about what the AI should not include or discuss in its response, creating clear boundaries that prevent unwanted content, inappropriate suggestions, or off-topic discussions. This method adds an “Avoid:” constraint that appears in the standard constraints section, providing clear guidance about prohibited topics or approaches.
Parameters
topics:Union[str, List[str]]
Specific topics, behaviors, approaches, or content areas that should be explicitly avoided in the response. Can be a single string or list of strings. Each item should be clearly defined and specific enough to provide clear guidance (e.g., "controversial political opinions", "deprecated technologies", "cost-cutting through layoffs", "quick fixes without testing", etc.).
Returns
PromptBuilder
Self for method chaining, allowing combination with other prompt building methods to create comprehensive, structured prompts.
Research Foundation
Negative Guidance Psychology. Research in cognitive psychology shows that explicit negative instructions can be effective when combined with positive guidance. By clearly stating what to avoid, this method helps the AI navigate complex topics while staying within appropriate boundaries and maintaining focus on desired outcomes.
Boundary Setting Mechanism. Avoid topics serves as a content filter and boundary-setting mechanism that prevents responses from venturing into sensitive, irrelevant, or counterproductive areas. This is particularly valuable for professional contexts where certain topics or approaches could be inappropriate or harmful.
Risk Mitigation Strategy. Negative constraints help mitigate risks associated with AI-generated content by explicitly excluding potentially problematic topics, biased perspectives, or approaches that could lead to harmful or inappropriate recommendations.
Focus Enhancement Theory. By eliminating distracting or irrelevant topics, .avoid_topics() helps maintain laser focus on the core objectives and prevents the AI from exploring tangential areas that might dilute the quality or relevance of the response.
Integration Notes
Boundary Setting: establishes clear content and approach boundaries for AI responses
Risk Mitigation: prevents problematic or inappropriate content through explicit exclusion
Focus Enhancement: eliminates distracting topics to maintain response relevance
Professional Standards: ensures responses align with ethical and professional guidelines
Quality Assurance: prevents low-quality approaches through negative guidance
Complementary Constraints: works alongside positive constraints to create comprehensive guidance
The .avoid_topics() method provides essential boundary-setting capabilities that ensure AI responses remain appropriate, focused, and aligned with professional standards while explicitly excluding problematic approaches or content areas that could compromise response quality or appropriateness.
Examples
Technical architecture review
Avoid outdated or problematic technologies and approaches for a bot focused on modern software architecture:
import talk_box as tbbuilder = ( tb.PromptBuilder() .persona("solution architect", "modern enterprise systems") .task_context("design scalable microservices architecture for e-commerce platform") .core_analysis(["service decomposition strategy","inter-service communication patterns","data consistency approaches","scalability and performance optimization" ]) .avoid_topics(["monolithic architecture patterns","deprecated Java EE technologies","synchronous blocking communication","database shared between services","manual deployment processes" ]) .output_format(["architecture overview with service boundaries","technology stack recommendations","implementation roadmap with phases" ]))print(builder)
You are a solution architect with expertise in modern enterprise systems.
CRITICAL REQUIREMENTS:
- IMPORTANT CONSTRAINT: You MUST NOT provide any information, advice, or discussion about monolithic
architecture patterns, deprecated Java EE technologies, synchronous blocking communication,
database shared between services, or manual deployment processes. If asked about any of these
topics, politely decline and redirect by saying something to the effect of 'I'm not able to help
with that topic. Is there something else I can assist you with instead?' (adapt the language and
phrasing to match the conversation's language and tone).
TASK: design scalable microservices architecture for e-commerce platform
CORE ANALYSIS (Required):
- service decomposition strategy
- inter-service communication patterns
- data consistency approaches
- scalability and performance optimization
OUTPUT FORMAT:
- architecture overview with service boundaries
- technology stack recommendations
- implementation roadmap with phases
Business strategy consultation
Avoid ethically questionable or short-term approaches when advising on business strategy:
builder = ( tb.PromptBuilder() .persona("business consultant", "sustainable growth strategies") .task_context("develop growth strategy for struggling retail company") .core_analysis(["market positioning and competitive advantages","operational efficiency improvements","customer experience enhancements","revenue diversification opportunities" ]) .avoid_topics(["mass layoffs as primary cost reduction","exploiting regulatory loopholes","aggressive customer data monetization","environmental impact trade-offs for profit","anti-competitive pricing strategies" ]) .constraint("focus on sustainable, long-term solutions") .output_format(["strategic assessment with market analysis","growth initiatives with ethical considerations","implementation timeline with stakeholder impact" ]))print(builder)
You are a business consultant with expertise in sustainable growth strategies.
CRITICAL REQUIREMENTS:
- IMPORTANT CONSTRAINT: You MUST NOT provide any information, advice, or discussion about mass
layoffs as primary cost reduction, exploiting regulatory loopholes, aggressive customer data
monetization, environmental impact trade-offs for profit, or anti-competitive pricing strategies.
If asked about any of these topics, politely decline and redirect by saying something to the
effect of 'I'm not able to help with that topic. Is there something else I can assist you with
instead?' (adapt the language and phrasing to match the conversation's language and tone).
TASK: develop growth strategy for struggling retail company
CORE ANALYSIS (Required):
- market positioning and competitive advantages
- operational efficiency improvements
- customer experience enhancements
- revenue diversification opportunities
ADDITIONAL CONSTRAINTS:
- focus on sustainable, long-term solutions
OUTPUT FORMAT:
- strategic assessment with market analysis
- growth initiatives with ethical considerations
- implementation timeline with stakeholder impact
Security audit guidance
Avoid security through obscurity and weak practices:
builder = ( tb.PromptBuilder() .persona("security engineer", "application security best practices") .task_context("audit web application security for financial services company") .core_analysis(["authentication and authorization mechanisms","data protection and encryption standards","input validation and sanitization","infrastructure security configuration" ]) .avoid_topics(["security through obscurity approaches","custom cryptographic implementations","storing passwords in plain text or weak hashing","disabling security features for convenience","ignoring OWASP recommendations" ]) .critical_constraint("all recommendations must follow industry security standards") .output_format(["security assessment with risk levels","critical vulnerabilities requiring immediate attention","best practice implementation roadmap" ]))print(builder)
You are a security engineer with expertise in application security best practices.
CRITICAL REQUIREMENTS:
- all recommendations must follow industry security standards
TASK: audit web application security for financial services company
CORE ANALYSIS (Required):
- authentication and authorization mechanisms
- data protection and encryption standards
- input validation and sanitization
- infrastructure security configuration
ADDITIONAL CONSTRAINTS:
- IMPORTANT CONSTRAINT: You MUST NOT provide any information, advice, or discussion about security
through obscurity approaches, custom cryptographic implementations, storing passwords in plain
text or weak hashing, disabling security features for convenience, or ignoring OWASP
recommendations. If asked about any of these topics, politely decline and redirect by saying
something to the effect of 'I'm not able to help with that topic. Is there something else I can
assist you with instead?' (adapt the language and phrasing to match the conversation's language
and tone).
OUTPUT FORMAT:
- security assessment with risk levels
- critical vulnerabilities requiring immediate attention
- best practice implementation roadmap
Educational content development
Avoid outdated or confusing learning approaches by specifying poor pedagogical practices:
builder = ( tb.PromptBuilder() .persona("instructional designer", "modern programming education") .task_context("create comprehensive Python programming curriculum for beginners") .core_analysis(["progressive skill building sequence","hands-on practice opportunities","real-world application examples","common mistake prevention strategies" ]) .avoid_topics(["memorization-based learning without understanding","outdated Python 2.x syntax and practices","complex theoretical concepts before practical foundation","overwhelming students with too many options","abstract examples without real-world relevance" ]) .constraint("include diverse learning styles and accessibility considerations") .output_format(["curriculum structure with learning objectives","module breakdown with practical exercises","assessment strategies and progress tracking" ]))print(builder)
You are a instructional designer with expertise in modern programming education.
CRITICAL REQUIREMENTS:
- IMPORTANT CONSTRAINT: You MUST NOT provide any information, advice, or discussion about
memorization-based learning without understanding, outdated Python 2.x syntax and practices,
complex theoretical concepts before practical foundation, overwhelming students with too many
options, or abstract examples without real-world relevance. If asked about any of these topics,
politely decline and redirect by saying something to the effect of 'I'm not able to help with that
topic. Is there something else I can assist you with instead?' (adapt the language and phrasing to
match the conversation's language and tone).
TASK: create comprehensive Python programming curriculum for beginners
CORE ANALYSIS (Required):
- progressive skill building sequence
- hands-on practice opportunities
- real-world application examples
- common mistake prevention strategies
ADDITIONAL CONSTRAINTS:
- include diverse learning styles and accessibility considerations
OUTPUT FORMAT:
- curriculum structure with learning objectives
- module breakdown with practical exercises
- assessment strategies and progress tracking
Code review guidance
Avoid problematic coding practices and shortcuts. For this example, we create a code review prompt that emphasizes constructive feedback while avoiding poor development practices:
builder = ( tb.PromptBuilder() .persona("senior developer", "code quality and best practices") .task_context("review pull request for production deployment") .core_analysis(["code correctness and functionality","security vulnerability assessment","performance implications and optimization","maintainability and documentation quality" ]) .avoid_topics(["quick fixes that introduce technical debt","skipping unit tests for faster delivery","hard-coding configuration values","ignoring error handling for edge cases","copy-pasting code without understanding" ]) .constraint("provide constructive feedback with learning opportunities") .output_format(["code quality assessment with specific examples","security and performance concerns","improvement recommendations with rationale" ]))print(builder)
You are a senior developer with expertise in code quality and best practices.
CRITICAL REQUIREMENTS:
- IMPORTANT CONSTRAINT: You MUST NOT provide any information, advice, or discussion about quick
fixes that introduce technical debt, skipping unit tests for faster delivery, hard-coding
configuration values, ignoring error handling for edge cases, or copy-pasting code without
understanding. If asked about any of these topics, politely decline and redirect by saying
something to the effect of 'I'm not able to help with that topic. Is there something else I can
assist you with instead?' (adapt the language and phrasing to match the conversation's language
and tone).
TASK: review pull request for production deployment
CORE ANALYSIS (Required):
- code correctness and functionality
- security vulnerability assessment
- performance implications and optimization
- maintainability and documentation quality
ADDITIONAL CONSTRAINTS:
- provide constructive feedback with learning opportunities
OUTPUT FORMAT:
- code quality assessment with specific examples
- security and performance concerns
- improvement recommendations with rationale