Skip to content

Extract



Extractor endpoints

extract_headlines(request) async

Endpoint for extracting headlines from remark

Parameters:

Name Type Description Default
request ExtractHeadlinesRequest

house data

required

Returns:

Name Type Description
response ExtractHeadlinesResponse

all patterns and the best of them

Source code in app/routers/extract.py
@router.post('/extract_headlines', response_model=response_schema.ExtractHeadlinesResponse,
             response_model_exclude_none=True)
async def extract_headlines(request: request_schema.ExtractHeadlinesRequest):
    """
    Endpoint for extracting headlines from remark

    Parameters
    ----------
    request : request_schema.ExtractHeadlinesRequest
        house data

    Returns
    -------
    response : response_schema.ExtractHeadlinesResponse
        all patterns and the best of them
    """
    listing_id = request.listing_id
    remark = request.remark
    min_length = request.min_char
    headlines, all_patterns = services.extract_headlines(remark, min_length)
    return response_schema.ExtractHeadlinesResponse(listing_id=listing_id, headlines=headlines,
                                                    all_patterns=all_patterns)

process_remark(request) async

Sentencize the remark and extract the home related patterns from it

Parameters:

Name Type Description Default
request ProcessRemarkRequest

house data

required

Returns:

Name Type Description
response ProcessRemarkResponse

all patterns and the best of them

Source code in app/routers/extract.py
@router.post('/process_remark', response_model=response_schema.ProcessRemarkResponse,
             response_model_exclude_none=True)
async def process_remark(request: request_schema.ProcessRemarkRequest):
    """
    Sentencize the remark and extract the home related patterns from it

    Parameters
    ----------
    request : request_schema.ProcessRemarkRequest
        house data

    Returns
    -------
    response : response_schema.ProcessRemarkResponse
        all patterns and the best of them
    """

    headlines, all_patterns = services.extract_headlines(remark=request.remark,
                                                         min_length=request.min_char)
    sentences = services.sentencize(text=request.remark)
    return response_schema.ProcessRemarkResponse(listing_id=request.listing_id,
                                                 headlines=headlines,
                                                 sentences=sentences)

extract_features(request) async

Endpoint for extracting features

Parameters:

Name Type Description Default
request ExtractFeaturesRequest

home data

required

Returns:

Name Type Description
response ExtractFeaturesResponse

list of features of the house

Source code in app/routers/extract.py
@router.post('/extract_features', response_model=response_schema.ExtractFeaturesResponse,
             response_model_exclude_none=True)
async def extract_features(request: request_schema.ExtractFeaturesRequest):
    """
    Endpoint for extracting features

    Parameters
    ----------
    request : request_schema.ExtractFeaturesRequest
        home data

    Returns
    -------
    response : response_schema.ExtractFeaturesResponse
        list of features of the house
    """
    listing_id = request.listing_id
    remark = request.remark

    features = services.extract_features(remark)
    return response_schema.ExtractFeaturesResponse(listing_id=listing_id, features=features)

return_unique_features() async

Endpoint for getting unique features

Returns:

Name Type Description
response UniqueFeatures

list of unique features

Source code in app/routers/extract.py
@router.get('/unique_features', response_model=response_schema.UniqueFeaturesResponse,
            response_model_exclude_none=True)
async def return_unique_features():
    """
    Endpoint for getting unique features

    Returns
    -------
    response : response_schema.UniqueFeatures
        list of unique features
    """
    features = services.return_unique_features()
    return response_schema.UniqueFeaturesResponse(features=features)