Skip to content

Implement a manager class that interacts with the appnexus library #4295

@akolson

Description

@akolson

Overview

To integrate with the appnexus library, we need to create an AutomationManager class that manages interactions with any instance of our backends(for example Whisper, Recommendations, GCS, etc). The task involves designing and implementing the manager class to interact with our appnexus library's adapter and backend implementations.

Description and outcomes

  1. Implement the AutomationManager class that interacts with the appnexus library
  2. The AutomationManager should have the following methods to manage interaction with the recommendations backend;
  • generate_embedding(text) -> Vector
  • embedding_exists(embedding) -> Boolean
  • load_recommendations(embedding) -> []
  • cache_embeddings(embeddings) -> Vector
  1. The AutomationManager class should be implemented within contentcuration/contentcuration/utils/automation_manager.py
  2. The actual functionalities of these methods is out of scope of this task as they rely heavily on presence of the backends that are currently not available. Boilerplate will suffice, for now.

Accessibility requirements

Not applicable

Acceptance criteria

  1. The AutomationManager class is designed to interact with the appnexus library's adapter and backend implementations.
  2. The AutomationManager class has appropriate methods to generate, load, cache and check for embeddings
  3. Unit tests to validate the correctness of methods in the AutomationManager
  4. Documentation is added to guide on usages of the class and methods.

Resources

#4302

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions